So I've been wondering for a while why the Windows build was extremely slow at some things, and since adding proper grass to some of the maps, loading on Windows became an interminable process so something needed to be done. I googled a bit, and what did I find? This. For those of you who didn't immediately click on that link and read it, the short version is that Microsoft's STL implementation in Visual C++ blows. Hard. Admittedly the post is referring to the 2005 version and I'm using 2008, but since my symptoms match exactly (80% CPU wasted in RtlReAllocateHeap), I have to assume that they haven't fixed it. And yes, I've already disabled _SECURE_SCL (don't get me started on the idiocy of enabling that in release builds).
My two options at this point are ditching the MS STL implementation and using something like STLPort, which seems like a solid STL from what I read, or just ditching Visual Studio altogether and using MinGW. The latter is looking like the more attractive of the two since STLPort seems to have a fairly involved installation method, and with Code::Blocks I think I can probably get back up and running with MinGW with relatively little effort on my part. In retrospect I should have just used that in the first place, but I wasn't familiar with it at the time and I had heard such good things about Visual Studio so I had to try it. My mistake.
Anyway, it's nice to know that, like death and taxes, Microsoft can always be counted on to disappoint. I don't care how good your IDE is if your compiler is, for my purposes anyway, broken.