Warm the milk in the microwave until it reaches a temperature of 115°F – 120°F. In the bowl of a standing mixer fitted with the paddle attachment, beat the warm milk, sugar, egg, yeast, salt, and the first set of flour (120g) on low speed until smooth for 3 minutes.
Next, slowly add softened butter in 3 additions. Mix for another few minutes until the butter is no longer visible. Add the 2nd set of flour (280g). Mix until the dough starts to pull away from the bowl, then switch to a kneading hook.
Knead the dough for 8 minutes on medium-high speed. The dough should form into a ball and be slightly sticky. However, if it's too sticky, add 1 tbsp of flour. Once done, transfer the dough to a lightly oiled bowl. Cover with a warm towel and proof dough for 2 hours in a warm, draft-free area.
After the dough has doubled, lightly dust flour onto a work surface and roll the dough out into a 14 "x 14" rectangle. Spread the cinnamon sugar paste evenly over the dough. Tightly roll the dough into a log, ensuring the seam ends on the bottom. Cut off about 1" off the ends. Next, cut six even pieces using a sharp knife or dental floss. Place them into a baking pan. Cover and proof for another 45 minutes. If not baking immediately, see recipe notes for further instructions.
Preheat oven to 375°F. While the cinnamon rolls are getting their last rise, it's time to make the cream cheese. Using a hand mixer, beat softened cream cheese and unsalted butter in a mixing bowl until smooth, a few minutes. Next, add sifted powdered sugar, vanilla extract, and milk. Beat until smooth and creamy. Chill in the fridge for 15 minutes.
After the final proofing, pour warm heavy cream evenly onto the cinnamon rolls. Bake for 18-20 minutes. Allow to cool for 20 minutes before smothering on a generous layer of cream cheese frosting onto cinnamon rolls. Devour.