Preheat your oven to 350°F (175°C) and grease or line a muffin tin with paper liners.
In a mixing bowl, cream together the softened butter and granulated sugar until light and fluffy.
Add the eggs and vanilla extract to the butter and sugar mixture, beating until well combined.
In a separate bowl, whisk together the flour, baking powder, salt, and ground cinnamon.
Gradually add the dry ingredients to the wet mixture while alternating with the milk. Stir until just combined; do not overmix.
In another bowl, combine the softened cream cheese, powdered sugar, and vanilla extract. Mix until smooth and well blended.
Fill each muffin cup about one-third full with the muffin batter. Then add a spoonful of cream cheese filling on top of the batter in each cup.
Top the cream cheese filling with more muffin batter until each cup is about two-thirds full.
In a small bowl, mix together the granulated sugar and ground cinnamon for the topping. Sprinkle the cinnamon sugar mixture generously over the muffins.
Bake in the preheated oven for 18-20 minutes or until a toothpick inserted into the muffin comes out clean.
Remove from the oven and brush the tops with melted butter, if desired.
Allow the muffins to cool in the pan for about 5 minutes before transferring them to a cooling rack.