Finally, a visitor emailed me and said she was using IE7 and a page kept reloading. At last, a repro.
Solving the problem was more difficult as only some pages were affected. Then a break: due to issues with the shared server, I disabled some plugins and decided to reduce the load in the Redirection plugin by using VBScript redirection on many of the old *.asp pages. The problem was better – the pages I used to repro stopped reloading.
Then I did two things: I moved some pages into sub-categories, which meant the URL in the VBScript was redirected by Redirection. I also wanted to see if Super Cache would cache static pages better than Total Cache. (I use custom PHP to load the Tools lists from a MS SQL server database. It makes *a lot* of SQL calls when traffic is high.) I noticed some pages were reloading once. The pages were usable since it was only a one time reload from the cache, so I didn't spend much time looking into it.
Super cache didn't work as I'd hoped and Google's webmaster tools said my page load speed shot up, so I went back to Total Cache.
Then some pages began reloading over and over, including a few that had stopped reloading. Sigh. More testing… I finally tracked it down to only pages that were redirected by Redirection. I can't disable Redirection and while I could configure IIS to handle redirection (requiring, oh, like 30 man-hours to set up the urls), I knew it was a conflict between redirection and something else. Once again, disable most plugins… no help. Total cache went next. Problem solved but the site loaded oh so slow… I re-enabled TC and started testing with cache type. Object and Database didn't have an effect… but Page caching did. With it off, the pages stopped reloading in IE 7.
Solution: I added MSIE 7.0 as a browser string (and MSIE 6.0 for good measure) that does not get served a cached page and the problem is solved. IE7 and IE6 users (up to 15% of my site visitors) will experience slower-loading pages, but at least the site will be usable, not reloading every few seconds.
I have no idea why page caching and redirection cause IE7 to reload the pages, but I've wasted enough time on it (for now). I don't understand why redirecting these pages using Redirection would cause a problem though, when pulling up the page directly (or redirecting outside of WordPress) works as expected.