I have seen this issue as well; sometimes only the first 2048 bytes of a file are written to the SD card, with no file error during the transfer. The file is just truncated at 2048 bytes. I've had this happen with several ftp apps.
FYI - I've started using a free app called GoodSync (https://www.goodsync.com) that can synchronize a folder tree on a computer with the folder tree on the Duet using ftp. It has the option to use file checksums to do the comparisons, so you're always sure that the files end up on the Duet correctly. It also has good filtering options to control which files get pushed.