Preheat the oven to 350 degrees F. Spray two 9x2 -inch metal cake pans with flour-added baking spray or grease with shortening and dust with flour. Line pans with parchment circles if desired.
Mix together the flour, baking powder and salt and set aside.
In a stand mixer bowl, beat the butter on medium high speed until light and creamy. Beat in the vanilla. Gradually add the sugar, scraping the sides of the bowl once or twice and beating for about 5 minutes or until light and creamy.
Add eggs one at a time and continue beating for another minute or two, scraping sides of bowl.
Reduce speed to low and add the milk, then add flour and sour cream alternately. When flour is fully incorporated, divide evenly among the pans.
Bake on center rack for about 35 minutes or until cakes spring back when touched and a pick inserted comes out clean.
To make the frosting, put 2 1/2 cups of the sugar in a large mixing bowl. Add the butter and mash it around until mixture is grainy and moist, then add the egg, milk and salt and stir until smooth. Set aside.
Sprinkle remaining 1/2 cup sugar in 3 quart heavy duty saucepan; cook over medium heat, stirring constantly, until sugar melts and syrup is a light golden brown.
Remove from heat and stir the butter mixture into hot caramelized sugar, then return to heat and cook over medium, stirring constantly, until mixture reaches 235 on a candy thermometer. Note: When you first put the butter mixture into the caramelized sugar, it will start to harden and clump. Just keep cooking and stirring and it will all melt together, but do keep the heat even. This process should take about 10 to 15 minutes.
When mixture reaches 235, remove from heat and let cool for about 5 minutes.
Add the vanilla and beat frosting with a wooden spoon to almost spreading consistency or you can cheat a bit. Pour it into a mixing bowl and beat it with a handheld mixer until it starts to thicken. As soon as it's thick enough to pour, but not too runny, spoon some over the first layer of cake. It should fan out a bit, but eventually set. Stack on the second layer of cake and pour some more caramel carefully over the top. Spread it around the sides the best you can.