Preheat the oven to 350°F. Line a cupcake pan with liners.
To make the batter: In the bowl of a stand mixer fitted with the paddle attachment, add the butter, cane sugar, and vanilla extract. Mix on low until combined and there are no chunks of butter.
Add the eggs, milk, and sour cream and mix for a few rotations. It will look like cottage cheese at this stage. Make sure to scrape down the sides of the bowl to get the sugar that sticks to the bowl.
In a separate bowl, add the cake flour, baking powder, and sea salt and whisk together. Add the flour mixture into the butter mixture.
Mix on low until combined. Make sure to scrape down the sides of the bowl and mix to combine everything so you have a smooth cake batter.
Using a spoon or cupcake scoop, fill cupcake liners three-quarters full.
Bake for 20 to 23 minutes or until a wooden pick inserted in center comes out clean. Allow to cool completely in the cupcake pans.
To make the frosting: In the bowl of a stand mixer fitted with the paddle attachment, add the butter, powdered sugar, milk, and vanilla extract. Mix on low until combined, then speed mixer up to high and mix for 1 minute or until light and fluffy. Scrape down sides of bowl and mix again to combine completely.
Transfer to a piping bag with tip #827. Pipe frosting onto cupcakes. You can also just use a butter knife! Top with white sprinkles (optional).
Store in an airtight container in the fridge for up to 3 days.