You want to establish whether it's a hardware or software fault.
The quickest way to do this is to replace the software completely.
Download a Linux distribution which boots from cd. Boot from it. And see if the problem persists while using Linux.
If you still have. Ouse problems. Then it's...