What could be interesting to know is if we all have something non-conventional set up.
I already saw articles or forum posts indicating no problems between Apache and Windows XP. I guess we would see more complains if php wasn't working too.
So our problem may come from either a misconfiguration (I doubt it, I had the same config on Windows 2000 Server and it worked) or an incompatibility between Apache or php and an uncommon configuration of Windows XP.
From what you said, JoshB, I guess you're using the cgi version of php (the module doesn't start a php.exe process, does it?). As I am using the module version of php and it's not working either, it can be assumed that the problem is not module/cgi related.
I have tried what I wrote above (checking the http checkbox in the ICS parameters) and it seems that corruption has reduced (I haven't made extensive test so I am not too sure on that, it seems odd). In fact I remember having lots of bytes corrupted (let's say 40) and now when I check, I see only about 10 bytes corrupted. I am quite intrigued by that, those results should be backed up by more tests. By the way it doesn't solve the problem entirely.
What would be interesting to test (I can't make it now) would be to send a "long" html file with no php to see if the same problem occurs. If it does then we can safely assume it is not php related (well at least not entirely), if the page loads well then we'll need to investigate further on php (maybe installing latest version which seems to behave better on Windows).
Another test that could be useful would be to see what Apache is sending, whether it is already corrupted or not (I am not too confident on my USB modem).
Please tell any uncommon features you have in Apache, php or WindowsXP and any uncommon hardware (network related of course).
As I already said, I have an Alcatel Speedtouch USB ADSL modem. My Apache configuration is basic except for the use of virtual hosts and "dynamic" virtual hosts (through mod_vhost_alias) and php of course. For php, everything is basic too ; I have only increased some values (don't remember well). As of WindowsXP, I have Internet Connection Sharing enabled but the Internet Connection Firewall is disabled.
Waiting for contributions...