Am not a coder. ;)
Files in moodledata/temp/backup/ can be manually removed and no harm will come to the system ... Linux or Windows.
Before you do, however, do look at those .log files that are larger than 0 bytes in size for clues. You found one, BTW, the successful completion of a restore ends with the staging getting to 1000 - everytime. You saw one that reached 700 ... incomplete.
Now the question becomes why/what? That I can't really tell you ... many times course dependent.
You say it happens immediately ... so it never gets a chance to 'build a plan' and then execute that plan ... reporting reaching stage numbers. So what else might be going on at the time. Are you attempting during prime time usage by students/teachers? Got anything doing a virus scan or backup of something?
Check your web service logs and db server logs. If running MySQL/Apache, one might see a "MySQL server has gone away' error. Need to increase max_allowed_packet. LIke I may have mentioned before ... courses tend to get larger ... not smaller ... thus require more resources of the server.
Backing up using the backup.php script in code/admin/cli/ is a good idea .... make sure you use the option to save the backup to a directory outside of moodledata/filedir/ ... so you can find it later by a humanly recognizable name.
continuing to share in ... 'spirit of sharing', Ken