The server I had problems with was running the OpenSSH for Windows (the one delivered by Microsoft in Win10).
It seems that when I put the transfer in the background, there is a cut, then a resume, and that's around there I see a difference in the file.
I just had a look at the binary files, and to summarize:
Let's say I have "original.file", which is 1GB. I transfer it on the foreground for 100MB, then decide to put it in the background.
What happens when examining "altered.file", is that the first 100MB are just completely filled with zeros. The rest of the file is matching perfectly the original.
The size is also exactly the same.
Something fishy seems to occur during the resume, for whatever reason. File space is reallocated, and filled with blanks then, before the transfer can continue where it was interrupted.