sftp file size limit
It seems like adding a timeout resolves the problem. The default expect timeout is 10 seconds, which means at a rate of 400 KB/s, the timeout is trigged if 4000 KB = 4 MB is reached
set timeout 300
There is no limit by default (as far as I am aware).
I would guess you are getting packet loss and timing out. Try adding -D.
-D sftp_server_path Connect directly to a local sftp server (rather than via ssh(1)). This option may be useful in debugging the client and server.
I would probably copy it with rsync,
rsync -avrz --ignore-existing /folder/folder/folder [email protected]:/folder/folder/folder