The CMOS battery is not likely to cause the issue (but its cheap if you want to give it a go), as this only holds BIOS settings/config.
If the battery is flat it defaults the BIOS, the machine should work ok on default settings, it shouldn't cause random/high use shutdowns.
Seeing its not likely a power supply fault either try some of these :
1. Check the event log :
http://support.microsoft.com/kb/308427 for any errors around the time it crashes and google them and post the results.
2. Enable the BSOD screen if its disabled. next time it crashed it might give a BSOD error you can search:
(right-click the My Computer icon on your desktop, select Properties, and click on Advanced System Settings. In the System Properties window
that appears, select the Advanced tab, click Settings under Startup and Recovery, and uncheck the box that says 'Automatically Restart.' The
same steps also apply to XP.)
3. Try running in safe mode:
http://www.computerhope.com/issues/chsafe.htm 4. Does your motherboard have on-board video, if yes unplug your video card and set the BIOS to the on-board video.
5. Also when you said you got another hard drive, did you unplug you original and install windows to the new drive.