I've had a similar problem with my hdd (Scorpio blue WD2500BEVT), but I've solved by setting the sata link to min_power instead of the default max_performance: as root, check the files on:
if you get max_performance, then change it:
echo min_power > /sys/class/scsi_host/host0/link_power_management_policy
the same on the other files. Notice that this will get back to the default when you restart, or when you came back from a suspended mode, so you'll have to apply this every time.
I've also set hdparm to
-B128. If any of this does not work try to monitor your hard drive and check how many times it is been accessed, maybe modifying your fstab file, google it, on how to improve the hard drive. hope this help you, it got me really upset.