Preheat the oven to 350 degrees Fahrenheit and line a muffin tin with muffin papers.
Transfer the softened butter and brown sugar to a stand mixer fitted with the paddle attachment (or use a large bowl and an electric hand mixer). Mix on medium-high speed until combined and fluffy. Beat in the eggs one at a time on medium speed, scraping the sides of the bowl with a rubber spatula as needed. Once the eggs are incorporated, add in the vanilla extract and milk and continue mixing until combined (again, scraping the sides of the bowl if necessary).
In a separate bowl, stir together the gluten-free flour, baking powder, baking soda, and salt. Pour the dry ingredients into the stand mixer with the wet ingredients and beat until a smooth batter forms.
Use a rubber spatula to fold in the fresh blueberries so that they are well-incorporated throughout the batter.
Transfer the muffin batter to the prepared muffin pan and fill the muffin cups ¾ of the way up.
Optional Step: Stir together the ingredients for the streusel topping in a medium bowl until well combined. Sprinkle the topping mixture over the muffin batter. If you aren't doing the topping, you can top the muffins with extra blueberries if you'd like.
Bake muffins on the center rack of the preheated oven for 25 to 35 minutes, or until they are golden brown on top and test clean. I often insert a thermometer into the center of a muffin to check the internal temperature for doneness. Muffins are fully cooked once they have reached an internal temperature of 190 to 200 degrees Fahrenheit.
Allow the muffins to cool completely before peeling the muffins papers and eating. This is to avoid warm muffin sticking to the muffin papers.