Lightly grease an 8x8 inch baking pan. Preheat oven to 350 degrees F.
Make topping: Combine flour, brown sugar and cinnamon in a bowl. Add butter and cut in with works or a pastry blender until there are no large pieces. Stir in nuts.
In a mixing bowl cream together butter and sugar until pale and fluffy. Add egg and mix. Add sour cream, milk and vanilla and mix.
In a separate bowl whisk together the flour, salt, baking soda and baking powder.
Add dry ingredients to wet mixture and mix just until combined.
Spoon half of the batter into your prepared pan and smooth into an even bottom layer.
Sprinkle half of the topping mixture over the top. Spoon remaining batter on top and smooth into an even layer.
Sprinkle remaining topping mixture over the top.
Bake in preheated oven for 40-50 minutes or until a toothpick inserted into the center comes out clean, or with few crumbs.
Check the mixture about half way through baking --you may want to put a piece of tinfoil over the top to keep the top from browning too much.
Allow to cool for at least 10 minutes before serving.
Video
Notes
*Double the recipe for a 9x13'' pan and you may need to cook it for about 5 extra minutes.Make ahead instructions: This cake can definitely be made the morning of or even the night before. Store it on the countertop for 1-2 days or in the refrigerator for up to 5 days. It does dry out easily so tastes best fresh!