Bring a large pot of water to a rolling boil, then add some salt. Add the spaghetti and cook according to the package instructions until Al dente.
Drain and transfer to a large bowl. Add the tomato sauce and toss to coat. Let cool completely.
In a small bowl, beat the eggs.
When the spaghetti has cooled, add the beaten eggs, mozzarella, and Parmigiano-Reggiano and stir until thoroughly combined.
Heat an 8-inch non-stick frying pan over medium heat until hot, then add a drizzle of olive oil and the garlic. Cook, stirring until the garlic is golden. Remove and discard the garlic.
Add the spaghetti to a pan, pressing it into an even layer with a spatula. Cook for 10 to 12 minutes, until a golden crust has developed on the bottom.
Invert a large plate over the pan and, in one quick motion, flip the frittata onto a plate.
Add a drizzle of olive oil, then slide the frittata back into the pan and cook on the second side until golden brown, about 6-8 minutes. Serve hot.