Preheat the oven to 350 degrees F (175 degrees C). Lightly grease a 9x13-inch baking dish; set aside.
Prepare cinnamon layer by stirring brown sugar, flour, and cinnamon together in a small bowl until well combined; set aside.
Prepare streusel topping by combining brown sugar, flour, cinnamon, and salt in a small bowl. Add butter and stir with a fork until mixture is crumbly; set aside.
Prepare cake by whisking together flour, baking powder, and salt in a medium bowl.
Beat sugar and butter in a stand mixer fitted with the paddle attachment on medium speed until fluffy, about 3 minutes. Scrape the sides of the bowl, then turn the mixer on low speed and beat in eggs until well blended. Gradually mix in flour mixture and milk. Add sour cream and vanilla and beat for 30 seconds.
Pour 1/2 of the batter into the prepared baking dish. Sprinkle the cinnamon layer over the batter, then pour the remaining batter over top. Spread streusel topping evenly over the cake, pressing very lightly so it adheres to the batter.
Bake in the preheated oven until a toothpick inserted in the center comes out clean, 40 to 50 minutes. Remove from the oven and let cool completely before serving, about 30 minutes.