Heat oven to 350°F. Grease and line a 9-inch square pan with parchment.
Make streusel: Stir flour, brown sugar, cinnamon, and salt. Cut in cold butter until crumbles form. Chill.
Beat cream cheese, sugar, egg, vanilla, and lemon zest until silky and smooth. Set aside.
Whisk flour, baking powder, baking soda, and salt for the cake in a bowl.
Cream softened butter and sugar until light and fluffy. Beat in eggs one at a time, then vanilla.
Mix in dry ingredients alternately with sour cream, beginning and ending with dry. Fold in blueberries gently.
Spread about two-thirds of the batter in the pan. Dollop the cream cheese filling over the top.
Spoon remaining batter in small mounds and swirl lightly. Scatter streusel evenly over the surface.
Bake 45–50 minutes until set in the center and a tester comes out with a few moist crumbs.
Cool in the pan at least 30 minutes. Lift out, slice, and serve warm or at room temperature.