What about using the manufacturers storport driver (IE- Intel, LSI, AMD, etc) rather the the Microsoft driver?
A chkdsk will appear to hang in stage 4 on huge files, but should get past that point eventually. Seatools WILL NOT report a problem until the smart data trips the manufacturer threshold, you need to look at the smart data (Defraggler is the easiest way I have found, but it doesn't with with mirrors or any raid setup, you can view the smart data on the "health" tab).
Another clue provider is HDDTune, that have a 30day trial, you can run an error scan, when it completes, you can click the "speed map" button. As long as you don't use your PC during the test, all sectors should be green, red indicates they are very slow.
HDD manufactures these days try hard to minimize warranty replacements...I have had drives slow to a crawl and still report as ok even though it takes 5 retries to read a sector. That might not be your issue though since your system should still boot...even if it was slow.
Also, an external scan will not pickup a rootkit or any registry malware entries, but it will get the files they use (most of the time)...
During a period of high HDD activity, the storage driver ISR will be high...how much HDD free space do you have? Also, I just noticed you have the m2n32 MB, try disabling onboard audio in bios and try your game...I had one of those, the audio chip SUCKS, driver too...it off loads everything to the CPU, do yourself a favor and through a cheap soundblaster card in there...I will give you one if you pay shipping....but make sure that is at least part of the issue first.
Any chance the CPU is over heating and throttling itself?
Based on your info above try this:
To open a command prompt, click Start and then type CMD in the Search programs and files.
Right-click CMD.exe icon in Programs and choose Run as administrator.
When the User Account Control box pop up, click Yes.
At the command prompt, copy and paste (or type) the following command and then press ENTER:netsh int ip reset c:\resetlog.txt
Note If you do not want to specify a directory path for the log file, use the following command:netsh int ip reset resetlog.txt
Reboot the computer.