short answer is NO. merge is just a SQL statement like any other, and you cannot commit in the middle of a SQL statement. That is like asking

INSERT INTO ... SELECT * FROM ...;

can I commit when the insert is half done?

You want to commit in the middle, use two statements. Of course there is no guarantee that this will be faster; depends upon how you write the SQL, and it certainly is not the same semantically because you have created two transactions instead of one. Lastly you will need to figure out how to deal with failure. Suppose the first statement dies and the second succeeds or vice-versa. How do you recover and/or complete the operation?