Preheat oven to 350 degrees. Prepare a muffin tin with nonstick spray and set aside. NOTE: paper liners may also be used instead if desired.
Making the Cream Cheese Filling
Combine the cream cheese, confectioner's (powdered) sugar and vanilla into a medium bowl and mix well with a mixer until smooth. Do not overmix.
Place in the refrigerator to chill while making the muffins.
Making the Streusel Topping
Combine the melted butter, flour, brown sugar and cinnamon in a medium bowl. Mix with a fork until the mixture is crumbly. Set aside.
Making the Pumpkin Muffins
In a large mixing bowl combine all dry ingredients: flour, cinnamon, allspice, baking powder, salt, granulated sugar and brown sugar. Whisk to combine. NOTE: this can be the bowl of a standing mixer with the whisk attachment.
In a separate bowl combine all wet ingredients: pumpkin puree, vegetable oil, eggs, milk, and vanilla extract. Mix well to combine.
Add the wet ingredients to the dry ingredients and mix until fully combined.
Assembling the Muffins
Place 1 1/2 tablespoons of batter in each prepared muffin cavity. Smooth as needed to cover the bottom of the muffin tin.
Place a heaping teaspoon of the cream cheese filling in the middle on top of the batter in the muffin tins.
Place 2 tablespoons of batter on top of the cream cheese filling to cover it in each muffin cavity.
Tap the muffin tin on the counter a few times to settle the batter.
Sprinkle the streusel topping evenly on top of the muffins (aproximately 1-2 teaspoons per muffin).
Bake for 15-20 minutes or until a toothpick comes out clean and they are golden brown.
Allow to cool for 10 minutes in the muffin tin. Gently remove them and place on a cooling rack to fully cool. NOTE: a pliable spatula can be used to help remove the muffins from the muffin tin if needed.
Can be stored in an airtight container in the refrigerator for up to 3 days.