Bring a large pot of water to the boil, add salt. Tip in pasta and cook till al dente. Drain - but reserve some pasta cooking water in a mug.
Grate the courgettes and, using a clean tea towel, tip the courgettes onto it, then squeeze to take out extra water.
Heat the oil in a frying pan. Gently soften the crushed garlic for a few minutes. Don't let it brown.
Add the grated courgette and cook that too, without colouring. It won't take long at all. 5 minutes should do it. You can take it off the heat when you think it's done.
In a mixing jug, add the yolks (you could use the whites for meringues or an egg white omelette), and mix the cream and parmesan. You're not going to cook this sauce - it 'cooks' on the hot pasta.
Tip the courgette and garlic mix into the cooked and drained pasta, and add the cream/cheese/egg mixture. Using tongs or similar, toss the pasta, combining it well. Season. Toss again. Use a little pasta water, just a small splash, to prevent the creamy sauce going claggy. Let the pasta sit, maybe with the heat on very low, whilst you keep tossing - the sauce needs to soak into the pasta and takes a few minutes.
Serve with lots of black pepper and more parmesan. I cut my kids' spaghetti up with scissors to make it easier to eat.