Don't use a spatula. Use a non-stick pan with curved edges like these*.
Use a 9" pan or similar, for cooking 1-2 eggs, or a 12" for 3-4 eggs or omelets.
Put a little butter in the pan before the egg(s). This adds to the flavor, as well as provides lubrication necessary for the spatula-less flipping.
When you're ready to flip the egg, pick the pan off the burner, swirl the pan around gently, to make sure the egg is "loose," and isn't sticking to the pan. If it is stuck, you probably didn't use enough butter. Use a spatula to loosen the egg only--not to flip it!
Once you are confident the egg is loose, flip it in the air with your wrist, by making a forward, then quick upward motion. The egg should flip in the air only a couple of inches. With practice, you'll be able to get the egg to land perfectly every time, without breaking the yoke, and without folding. But it does take practice. But it's worth it, in my opinion. Not only does this produce the prettiest eggs possible, but it also makes you look like a Kitchen Ninja if you're cooking in front of friends. :) I use this method for over-light/easy/medium/hard eggs, as well as omelets.
Practice with a piece of bread and a cool pan, until you can get the bread to flip over exactly once. Of course the bread won't break if you flip too hard... so practice until you can get your bread to flip clean over with the least amount of force possible. Once you have this down (maybe 1-2 dozen bread flips of practice?) try with real eggs.
You will "ruin" a few eggs this way (meaning they'll break or fold), but it won't take long until you get most or all of your eggs coming out right this way.
When I worked at a diner using this method, we would throw away the broken eggs. At home, you can still eat them, as long as you aren't too offended by ugly eggs that still taste good :)
*Disclaimer: I don't own or recommend these specific pans; the picture just looks similar to the ones I own and like. You can buy suitable pans anywhere.