A few things:
Viper - how much space is free on that 120 gig drive and how is it formatted? I can't imagine it's too full, or anything but NTFS, but maybe...
You could partition that monster into some more manageable chunks if defragging continues to be a hassle.
My own defragging routine:
1) Clean - Spybot, window washer, regscrub, JV16 registry tools. Reboot.
2) Set page file/virtual memory to zero.
(edit...Reboot in Safe Mode).
3) Scandisk/Chkdisk - let it fix bad clusters
4) Defrag
5) Recreate page file/virtual memory. Reboot.
6) Bootvis
No fancy software - everything is defragged including the the page file and important stuff is moved to the front of the disk . It's like a tune-up everytime.
Slightly off topic but I thought it might help.