With a lot of things in play here I would start by troubleshooting at the lowest level. As they say in IT crowd have you tried turning it off and on again :) Sometimes i find a simple iisreset can fix it.
If it is more complex than that, as it sounds, then start by working backwards to identify where the problem actually is.
Start by disabling php altogether, put some regular html pages up and see if those load fine. If they do then it sounds like it is a php issue. Considering things like style sheets not loading it sounds definitely more like an IIS issue though. First make sure to enable logging on the iis service if it isnt already (is by default) http://technet.microsoft.com/en-us/library/cc754631%28WS.10%29.aspx.
Start looking through the IIS logs and the windows event viewer to see if anything is out of the ordinary.
If everything looks fine you should doubly confirm the following:
Make sure it's not a network issue. While both boxes are in the same datacenter it could be there is a duplex mismatch or some errors on the port the server is plugged in to. Do an FTP transfer, or some other transfers to and from the machine and see if you experience the same issues with http. Try and browse from the server itself or from the same LAN. Obviously not great to install web browsing software on a server so make sure to remove it afterwards or re-secure IE.
Run a hardware check. If this is a managed service ask your provider to do a hardware check on the machine. Most common boxes have a bootable cd you can run to check the hardware.
Check the utilization of the server. When browsing the site is there any sudden spike in memory or cpu that looks unordinary?
Try a different web server. While I wouldnt recommend installing apache on windows, it would be a good way to narrow it down between an IIS problem and a server problem. If you see the same issues with apache, then its likely your machine. If you don't then sounds like it is an IIS problem.
Hope this helps.