Preheat oven to 350°F. Line a 12-cup muffin tin with paper liners.
Whisk flour, baking powder, and salt in a medium bowl.
Cream butter and sugar with a mixer until pale and fluffy, 2 to 3 minutes.
Beat in eggs and vanilla until smooth, scraping the bowl once.
Mix in sour cream on low just until combined.
Add dry ingredients in two additions, alternating with milk. Mix on low until just blended.
Divide batter among liners, filling each about two-thirds full.
Bake 17 to 19 minutes, until a toothpick comes out clean or with a few moist crumbs.
Cool in pan 5 minutes. Transfer to a rack and cool completely before frosting.