Prep: Preheat oven to 350°F. Grease a donut pan with cooking spray or oil and wipe away the excess. Set aside.
Mix flour mixture: In a small bowl, stir together flour, baking powder, and salt. Set aside.
Mix wet ingredients: In a large mixing bowl, whisk together melted butter and granulated sugar until combined. Add the egg and vanilla extract and whisk until combined. Finally, add the milk and whisk until combined.
Fold in flour mixture: Add the flour mixture and fold it in until just combined.
Mix cinnamon sugar: In a small bowl, stir together the brown sugar and cinnamon.
Fold in cinnamon sugar swirl: Sprinkle the cinnamon sugar into the batter. Fold it into the batter 1-2 times, just enough to swirl it in but not completely mixed. Transfer this batter to a piping bag with the tip cut off.
Fill pan: Pipe the batter into the donut pan, filling each mold about ¾ full.
Bake: Bake donuts for 12-14 minutes or until they're puffy and lightly browned on the edges. Let the donuts cool in the pan for at least 5 minutes before lifting them out and transferring them to a wire rack to cool.
Cream Cheese Frosting
Mix ingredients: In a medium bowl, add softened cream cheese, powdered sugar, and vanilla extract. Use a spatula to smush it together until it becomes very smooth and creamy.
Adjust consistency: Add the heavy cream and stir to mix until the frosting is smooth and spreadable. You can add more heavy for a thinner consistency.
Frost donuts: Use an offset spatula to spread the frosting on top of the warm donuts. If the donuts have cooled, reheat them and apply the frosting before serving.