I still get the odd one, but I found the best way to stop spots it to wash your face twice a day only (unless actually dirty). Once in the shower, and once just in a sink. Don't use anything except water and a flanel, and make sure you towel dry it well.
I remember reading once that using clear skin products actually washes all the oil out of your skin. However of course your skin actually needs a certain amount, so it overproducess more to compensate.
So silly as it sounds, I've found washing it only twice a day in only water is best. I think I only get spots now if I break the routine, eg. falling asleep drunk and not washing my face until the morning.
Also as mentioned before, shaving everyday helps.