I have seen it where the size of the zip get sent correctly in the headers but it is still not a complete file.
I noticed two things on your PHP info that would prevent you from having regular success with large files... One your max_execution_time is set to only 30... so anything longer than 30 seconds, and that script stops working. A normal setting for that would be around 300.
The next thing is your memory limit... DFP's scripts do require use of memory... your setting is 32M. I currently use 128M, but have seen it suggested on here that people use 256M. I have not had any problem with 128 yet, though.