This may or may not be a heating problem, as you've suspected. There are many possible reasons for those dreaded computer hangups, overheating just being one of them. Among other possible causes are:
Hardware: Defective or mismatched components in your computer.
Aluminum Migration & ESD: Premature ageing and “Electro Static Discharge” can make a computer very intermittent.
Operating System: Some versions of Windows have bugs that can cause these problems.
Drivers: Buggy or down-level drivers can cause many problems.
Software: Some programs have bugs in them that can cause these problems.
Memory Fragmentation: Do you often see the message, "System is dangerously low in resources" If so you are probably suffering Memory Fragmentation.
CMOS Settings: Improper CMOS settings can cause many problems. Changing CMOS settings can also be used to help diagnose some hardware problems.
Loading Order: The order in which the software components of your computer are loaded into memory, at startup each day, can cause a multitude of odd problems.
A Combination of the above: Defects in any of the above may only show up under specific circumstances.
Chack out this site for troubleshooting tips on this problem:
http://www.jrwhipple.com/computer_hangs.html
(REMOVE SPACES from the pasted URL.)
Also, don't overlook the (not so) obvious. Clean up the hard drive by deleting temporary files and temporary Internet files, clear the Internet history files, delete unused program files or data files, those jpg files that clutter the drive, empty the recycle bin, and do a thorough disk defrag. And do a scan disk as well (do this first) to clean up and delete those lost clusters.
Good luck,
Maxwell