UPDATE: I've implemented a workaround to issue 1 by using the "Upload" feature (instead of "Move Up") with the following custom event:
Event Type: File Uploaded
Action: Execute Command
Exectution Path: C:\Windows\System32\cmd.exe
Command Line Parameters: /s /c "del /f "$LocalPath""
This custom event fires after each file is sucessfully uploaded, and deletes that file from the source. This means that only files that are sucessfully uploaded are deleted from the source, leaving failed uploads at the source for the next scheduled upload.
Alteratively, if you wish to archive the source file instead of deleting it, you could change the Command Line Parameter to "move" to store it elsewhere. Likewise, you could use the "File Upload Failure" event to move the failed file elsewhere.