Combine the streusel ingredients and cut together using a pastry cutter or similar tool. Cut the cold butter into the other ingredients until there the butter pieces are about the size of a pea. Place in the fridge to chill.
In a separate mixing bowl, combine the cream cheese filling ingredients and mix together until homogenous. I find a fork works well, but you could use a mixer if you prefer.
Preheat the oven to 400°F and grease or line your muffin tin for 12 muffins.
Combine the flour, brown sugar, baking soda and baking powder into a medium sized mixing bowl and whisk thoroughly to combine.
In a microwave safe measuring cup, melt the butter in the microwave using 15-30 second intervals, just until melted. Combine the melted butter with the buttermilk, followed by the beaten egg and vanilla.
Make a well in the center of the dry ingredients and pour the wet ingredients into the well. Using a rubber spatula, fold the dry ingredients and the went ingredients until just combined.
Using a small cookie/ice cream scoop (a little less than a tablespoon) scoop one level scoop of muffin batter into each muffin cup, use the back of the scoop to press the batter down into the bottom of the cup. Using the same scoop, repeat with the cream cheese mixture, then top with the last 1/2 of the muffin batter.
Top each muffin with about 2 teaspoons of streusel topping.
Bake for 14-18 minutes until the tops are domed. The toothpick trick will not work due to the cream cheese filling.
Allow to cool for 5-10 minutes before removing from the muffin tin. Best enjoyed warm from the oven. Store leftovers in the fridge.