Preheat oven to 350°F (177°C). Spray a 9x13-inch pan with non-stick cooking spray and set aside.
In a large mixing bowl, whisk together the flour, baking powder, baking soda, salt, and cinnamon. Set aside.
In the bowl of a stand mixer fitted with the paddle attachment, or in a large mixing bowl using a hand-held mixer, beat the butter and granulated sugar together until light and fluffy (about 4-5 minutes).
Mix in the eggs one at a time until fully incorporated, then mix in the vanilla extract, stopping to scrape down the sides of the bowl as needed.
With the mixer on low speed, add the dry ingredients in three parts alternating with the sour cream (starting and ending with the dry ingredients). Make sure to mix in each addition until just combined.
Scoop half of the batter into the prepared pan and smooth it out evenly. Remove the streusel topping from the refrigerator and sprinkle half of it on top of the cake batter. Scoop the other half of the cake batter on top and smooth it out, then top with the remaining half of the streusel topping.
Bake at 350°F (177°C) for 30-35 minutes or until a toothpick inserted into the center of the cake comes out clean.
Remove the cake from the oven and cool on a wire rack in the pan for at least 45 minutes to 1 hour, then slice and enjoy!