when u say it freezes, does the numlock light toggle? Is there any disk activity? can the pc be ping'd from another pc on the network or can you "net view \\pcname" from another pc on the network?
what you could do is maybe think back and figure out when the problem started to occur, did you make any changes, did u install any software or new devices? If so, maybe remove the device or uninstall the software you had recently installed. Maybe go back to a previously saved restore point.
check your windows event logs (start->run and type: eventvwr) and expand "Windows log" check under the application and system events - usually h/w errors would be logged to the system log and the drivers or application errors would log in application event log. take a look at you security event log as well around the times the freeze occurs - the same should apply for the other logs mentioned, see if there is a pattern...
you could setup a remote debugging session, you'll need to know how to perform online remote debugging while the system is hung... Or you could try a user initiated system crash and debug the memory dump file you generate - usually you'd look for run away threads - but this is a little advanced and if you haven't been trained in this area then you need to rely on your event logs..
you could also run perfmon and collect performance data on processes, memory, cpu utilization, etc,...
maybe join one of the Microsoft forum groups and run it by them, they'll ask you heaps of similar questions as above and probably get you to dump the system and they'd be happy to debug it for you. you'd need to install debugging tools for windows as a starter...
maybe find yourself a spare disk, disconnect your boot drive and connect this new drive to it and re-install windows and see if you still get these lockups...
oh and check to see if all your cards in the box a properly seated, cables are properly connected etc,.. and does your pc over heat? check the bios temp settings... is your pc overclocked? maybe its clocked up too high, try setting it back down if it has been overclocked..
make sure your antivirus software is up to date too, scan your system for viruses...
you could also do a driver verification and see if there are drivers that are installed that haven't been certified....