Prepare your lemon curd first since it needs time to chill. Whisk egg yolks, sugar, lemon juice, zest, and salt in a medium saucepan over medium heat. Stir constantly until the mixture thickens enough to coat the back of a spoon, about 8-10 minutes.
Remove from heat and stir in the butter one cube at a time until completely melted and smooth. Strain through a fine-mesh sieve into a bowl, cover with plastic wrap touching the surface, and refrigerate for at least 2 hours.
Preheat your oven to 350°F and line a 12-cup muffin tin with cupcake liners. This ensures even baking and easy cleanup.
Whisk together the dry ingredients in a medium bowl - flour, baking powder, and salt. Set this aside for later.
Cream the butter and sugar in a large bowl using an electric mixer on medium-high speed for 3-4 minutes until light and fluffy. This step is crucial for creating that airy texture!
Add eggs one at a time, beating well after each addition. Mix in the vanilla extract, lemon juice, and lemon zest until combined.
Alternate adding dry ingredients and milk, beginning and ending with the dry ingredients. Mix on low speed just until combined - don't overmix or your cupcakes will be tough.
Divide batter evenly among the cupcake liners, filling each about 2/3 full. Bake for 18-20 minutes until a toothpick inserted in the center comes out clean.
Cool completely on a wire rack before filling. This is important - warm cupcakes will make the filling runny!
Core out the center of each cupcake using a small knife or cupcake corer, removing about a tablespoon of cake. Fill each cavity with lemon curd.
Make the buttercream by beating softened butter until creamy, then gradually adding powdered sugar. Mix in lemon curd, heavy cream, and vanilla until light and fluffy.
Pipe or spread frosting onto each cupcake and garnish with lemon zest if desired. Serve and watch them disappear!