How to prevent overcooking of eggs in Carbonara sauce?
Cook the pancetta on a large pan, so that it fries in its own fat. It must turn red, but don't cook it too much as you are going to cook it a bit more later on.

Open two eggs. If you like the color of the carbonara intense, throw one white away, and keep one white and two yolks. Put them in a bowl, then add grated parmigiano and mix with a fork. The amount of parmesan should be at least the same volume of the eggs, maybe even more (twice does not hurt). This will give you a rather firm but still flowing compound. Firm is better than too liquid.

Cook the pasta. Spaghetti is the norm for carbonara, but also penne is a good choice. Get them "al dente" or some second later, as you prefer. Drain the pasta and put it in the pan you used to cook the pancetta (where the pancetta still is). Pour the egg/cheese mix on top of the pasta and put the pan on gentle heat, while you continue moving and mixing. Detach any layer of cooked egg from the bottom of the pan while you mix. The perfect carbonara must not be liquid, and it must not be clumpy solid, so keep mixing or you will get a pasta omelette.

Once you are done, turn off the heat, and take spaghetti up with a large fork, so to disentangle them while you transfer them on the dishes. move them in the dish with a small oscillating movement to disentangle a bit more. Continue like this for all the dishes you have to serve. At the end you will have the pancetta remaining in the pan, and you put it on top of each dish. 

Add more grated parmigiano and some ground black pepper and eat as soon and hot as possible !

Additional notes: try to stay a bit scarce on salt in the pasta water, and do not add salt to the egg. The fact is that the pancetta is already pretty salted, and you risk to obtain a very salted final result. Carbonara should be salty, but not too salty.

I heard about modification with butter and cream, but I have never seen them used, at least in my family and circle of friends.