01 - Preheat oven to 350°F. Grease and flour a 9-inch square baking pan.
02 - In a medium bowl, blend brown sugar, flour, and cinnamon. Cut in the cold butter using a pastry cutter or fork until coarse crumbs form. Stir in the nuts if desired. Set aside.
03 - In a large bowl, beat the softened butter and granulated sugar together until pale and fluffy. Add eggs one at a time, beating thoroughly after each addition. Mix in the sour cream and vanilla extract.
04 - In a separate bowl, whisk together flour, baking powder, baking soda, and salt.
05 - Add half of the dry mixture to the wet ingredients and blend just until integrated. Pour in the milk, then add the remaining dry mixture, mixing until smooth. Avoid overmixing.
06 - Spread half of the batter evenly in the prepared pan. Sprinkle with half of the streusel. Top with the remaining batter and finish with the rest of the streusel.
07 - Bake for 35 to 40 minutes until a toothpick inserted into the center emerges clean.
08 - Allow to cool in the pan for 15 minutes before serving warm or at room temperature.