Heat the oven to 350°F (175°C). Grease an 8-inch square metal pan and line it with a parchment sling. For the streusel, mix the flour, brown sugar, cinnamon, and salt; work in the cold butter with your fingertips until pea-size crumbs form. Refrigerate while making the batter.
Stir the cinnamon-ribbon brown sugar and cinnamon together in a small bowl. Whisk the cake flour, baking powder, baking soda, and salt in a separate bowl.
Beat the softened butter and granulated sugar on medium speed until pale and fluffy, about 2 to 3 minutes. Beat in the eggs one at a time, then the vanilla, scraping the bowl once.
With the mixer on low, add the dry mixture in three additions, alternating with the sour cream in two additions. Begin and end with the dry ingredients; stop as soon as no dry flour remains. The batter will be thick.
Spread half the batter in the pan. Sprinkle the cinnamon mixture evenly over it, keeping a narrow border at the edges. Dollop the remaining batter on top and spread gently, then scatter over the chilled streusel without pressing it down.
Bake for 38 to 45 minutes, until the center springs back lightly and a tester comes out with a few moist crumbs but no wet batter. If the top browns early, tent loosely with foil. Cool in the pan for 20 minutes, then lift out by the parchment and cool until just warm before slicing.