Hmm this sounds like something is interfering with your SFTP. What kind of a firewall are you running? Have you checked the log files that it is not truncating or altering your files? You mentioned that running FTP for the files in question did actually transmit the correct files and file sizes.
Ftp is not secure so your company won’t let you utilize it – but how about SCP? In Unix, you can use the scp command to copy files and directories securely between remote hosts without starting an FTP session or logging into the remote systems explicitly. The scp command uses SSH to transfer data, so it requires a password or passphrase for authentication. Unlike rcp or FTP, scp encrypts both the file and any passwords exchanged so that anyone snooping on the network can’t view them.
In general, the syntax for scp (as for cp) is:
scp [option...] source destination
where source and destination can each take the form:
See if this helps!
You could try using the sftp’s -v option, to increase verbosity. It could help on identifying the problem.
Just in case, I would also check the ssh config file to see if compression is enabled, and if so, try disabling it.
You could also use the -o option to play with different ssh options, to see if one of them helps.