Preheat oven to 350F. Butter and flour a 10″ tube pan.
In a medium bowl, toss together the flour, baking powder, baking soda and salt. Set aside.
In a small bowl, mix together all the streusel ingredients. Set aside.
Using an electric mixer or stand mixer with paddle attachment, cream together the butter and sugar until light and fluffy.
Beat in the eggs, one at a time, mixing well in between. Mix in the sour cream and vanilla until smooth.
Stir in the dry ingredients until just combined. Batter will be thick. Spoon half of the batter into the prepared baking pan. Spread to cover the bottom of the pan. Sprinkle half of the streusel over top. Repeat with the remaining batter and streusel.
Bake for 40-45 minutes or until a toothpick inserted into the center comes out clean.