Keep screen brightness to a minimum, set refresh intervals in apps to "never," and try using juice defender to keep your data connection off unless needed. All these things seem to work good for me. You can also use JD to tweak the screen brightness even further than the stock management.
Easiest way is to under clock. I wouldn't under clock it but that would be easiest. Have you taken the battery out and made sure it's doesn't have stuff covering the holes it uses to let heat out?
I use Juice Defender Ultimate, and while I cannot say whether it reduces heat, it definitely extends my battery life by managing Mobile Data and WiFi connections.
I had this problem about a week ago on my Bionic. Suddenly the phone ran warmer than I'm used to(but not hot) but I couldn't charge my phone via USB. Even in airplane mode plugging the phone into my laptop it only charged like 15% in 9 hours!
I just started freezing apps in alphabetical order using titanium backup, 5-10 at a time every few hours until I found the culprit. I can't remember which one it was, but one app kept taking CPU usage to 50% and full speed within seconds of booting up.