It could be a hardware or a software issue, but that System Restore suggests a software problem. And yet, if this still happens after a reinstall, that might point to hardware.
My first thought is malware; however, malware often affects the System Restore backup files as well. What anti-malware measures do you take for this computer?
The next time it happens, make a note of the time, then when you successfully load Windows, have a look at the Event Viewer to see if there are any clues. You can do that by going to Start > Run, type in eventvwr.msc and clicking OK.
In the Event Viewer window, look at the logs for both Application and System, and see if you get any warnings or errors for around that time. Double clicking any entry will show more details, and the Event ID and description are important.
When was the last time you opened the case and cleaned out all the dust?
Running 1.6GHZ PC with 1G Ram with Windows XP service pack 3 installed. It has recently started randomly (increasing in frequency) hanging on the startup screen - the black background screen with the scrolling bar in the middle. Once it hangs I have to reboot in safe mode and do a system restore to successfully start up. This may work for one or two start ups before hanging again. I have reinstalled the OS and still get the same issue.