Try running ChkDsk to check your drive for errors. Right-click your Drive icon/ Properties/ Tools/ Error Checking. Try it first by not checking either box (this will run it in a Read-only mode) to see if it flags any hard drive or file problems. If it does, restart it by ticking both boxes, and rerun it to allow it to attempt to fix any found problems.
You might get a few GB back if you run the Disk Cleanup tool and use the "More Options" tab to remove all but the most recent System Restore Points.
You don't really want Restore Points going back too far as they will more than likely uninstall all programs or settings you have changed since your "go back point" causing you more problems than it may fix.
The average restore point is 25mb+ with a "first in, first out" policy on restore points. They contain mainly deleted or altered exe, dlls, shortcuts and a registry backup and user profile details. They do not contain users data.
Keeping restore points for a week seems adequate. Amount of disk space used depends on the size of your restore points. Some restore points can be as large as 500mb after major alterations to a system (ie a new service pack or several hefty program installs, or running SFC /Scannow).
Other things that you can clean out via the Disk Cleanup tool include, Temporary Internet Files, Recycle Bin, and other Temp folders, and also queued error reports.
You could also consider purchasing and extra hard drive.