Certainly sounds like hardware.
SUGGESTIONS:
1. "Blow out" your computer (take it to a computer shop, if need be) - clear out any internal dust, etc
2. Run a full chkdisk and defrag (under Windows); do any disk checking you can under Linux. In particular, run any diagnostics you can find on either platform.
3. Look at your Linux syslog (/var/log/messages) and Windows event log ([Start], run, eventvwr).
If you're lucky, you might get an error indicating the problem.
Otherwise, look at the last entry that occurred BEFORE the lockup.
4. Google for "PC freezes" or variants - see what you can find.
5. Consider budgeting for a new laptop
If you find the problem, by all means post back what it was, and how (or if) you resolved it!
Good luck .. PSM
PS:
If your BIOS supports logging, by all means turn it on. And see if you get any errors in the BIOS log after the next freeze!