Preheat your oven to 375°F (190°C). Line a 12-cup muffin tin with paper liners or grease it well.
To make the streusel topping, combine the flour, granulated sugar, and brown sugar in a medium bowl. Add the cold cubed butter. Use your fingertips or a pastry blender to cut the butter into the dry ingredients until the mixture resembles coarse crumbs. Set aside.
In a large bowl, whisk together the 1 ½ cups flour, ½ cup granulated sugar, baking powder, and salt.
In a separate medium bowl, whisk the egg, milk, vegetable oil, and vanilla extract until well combined.
Pour the wet ingredients into the dry ingredients. Stir with a spoon or spatula until just combined. Do not overmix; a few lumps are fine.
Gently fold in the fresh blueberries.
Divide the batter evenly among the prepared muffin cups, filling each about two-thirds full.
Sprinkle a generous amount of the streusel topping over the top of each muffin.
Bake for 20-25 minutes, or until a wooden skewer inserted into the center of a muffin comes out clean and the tops are golden brown.
Let the muffins cool in the muffin tin for a few minutes before transferring them to a wire rack to cool completely.
