90% full is very full, but it shouldn't lead to I/O errors. That sounds more like a damaged file system or dying drive.
Recover all you can, possibly with the help of
PCI File Recovery. Then, run chkdsk /f on that drive, keeping in mind that the attempted repair may actually cause more damage to the file system. But at this point, I don't see too many alternatives since the drive may be on its way out.
After it is cleared out, also try chkdsk /r to see if it will complete and if there are surface defects in the drive.