I have the same issue after moving our site from a VM in AWS to siteground.
After spending two days trying to find out what is causing the problem (I am not a developer or experienced WordPress user) I found that this seems to be the problem:
“error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure”
If I download the file directly, it works, it is 0 bytes only when using one of the generated and sent by email links.