I guess my problem is related to the same issue.
When you try to download backup zip files in IE 8, a browser window pops up (containing nothing), then dialog window comes up asking to open/save the file. But nothing happens either I choose open or save - the download process just stalls. If right-click the link and choose "Save As" option, the zip file downloads successfully. But inside it contains a single file without extension, named after the backup file. If I append ".zip" to the end of it and unpack the file, everything goes okay.
On the other hand, if I add "?forcedownload=1" to the link (e.g., "http://server/file.php/..../filename.zip?forcedownload=1), I get a valid zip file where everything's in its place.
I would suggest that this behavior is caused by "Content-Disposition: inline" header, which I regard as pretty useless in case of zip files (and in case of all other types, if you ask me).
As a solution I would suggest to set $forcedownload to true for all zip files coming through file.php.