I/O errors normally mean one of four things:
Bad RAM
Bad HDD
Bad Cables
Bad Controller
Not necessarily in that order. I'd try another cable - then do some heavy I/O transfers. That should help isolate some causes. Looks like you're already onto something - good luck.