Cook the spaghetti in a large pot of salted boiling water until al dente, according to package instructions. Reserve the hot cooking water, because you will need it for the sauce later.
Meanwhile, in a large, deep skillet or Dutch oven, heat olive oil over medium heat. Add the bacon and cook until the fat is rendered and the bacon is crisp, about 5-7 minutes. Add the garlic and cook until fragrant, about 30 seconds. Add a ladle of pasta water and simmer on low heat for 2-3 minutes.
Meanwhile, whisk together the eggs and egg yolk in a large bowl. Add the Parmesan and whisk to combine. While whisking, very gradually add a ladle of the pasta water to temper the eggs. Set aside.
When the pasta is al dente, add the pasta straight from the water to the bacon in the skillet (reserving the pasta cooking water in the pot). Remove from the heat; season with black pepper, to taste.
Stir the egg mixture into the pasta and toss gently to coat. If the sauce is too thick, add a little bit more pasta water. Garnish with extra Parmesan cheese, a drizzle of olive oil, or chopped fresh herbs.