This was mentioned earlier, but it's worth repeating. The most important thing when cleaning CDs or DVDs is to wipe radially, not in circles. If you scratch a disc radially (from center to the edge), it's likely the player will able to error correct and it probably won't affect playback. If you scratch it in a circle, you could be creating too many errors for the machine to correct (since the data is laid out spirally).
There are some products that claim to be able to fix scratches. These work by actually grinding the playback surface smooth. Theoretically, this should work (since there's a lot of plastic between the surface and the ones/zeros). However, I would only recommend using one of these as a last resort, since it is irreversible.