Waited a bit longer for it to finish last night. Got to 70-something% and reset to 50% again. I left it on all night and by this morning it had completed. The only additional message was "CHKDSK has found and fixed errors on this drive."
Rebooted, it proceeded to load Windows, but it took a really long time (more than 5 minutes+ compared to the usual less than 1 minute boot time). When it finally reached the desktop, a dialog box popped up saying: "One of the files containing the system's registry data had to be recovered by one of a log or alternate copy." Anyway, it boots again now and seems to work fine so far, but I didn't get to mess with it much this morning and I'm at the shop now. That Raidmax Ninja case is huge and I couldn't be bothered to drag it into the shop this morning on the bus.
Anyway, when I get home tonight, I'll start putting everything else back in and see if the problem persists. If it was solely an issue with the hard drive, I'd say problem solved, but with the CD drive disappearing as well, I'm still not sure if it's the motherboard or power supply. Anyway, guess I'll find out tonight when I start connecting other things again.