In a small saucepan over medium heat, whisk together 3 tablespoons all purpose flour and ½ cup whole milk. Cook, whisking constantly, until a thick paste forms. Remove from heat and let cool completely.
In a large bowl, combine ¾ cup warm whole milk, ¼ cup heavy cream, and 2¼ teaspoons active dry yeast. Let sit for 5 to 10 minutes until foamy.
Add ¼ cup granulated sugar, 1 large egg, 1 large egg yolk, 4 tablespoons melted unsalted butter, and the cooled tangzhong. Mix until combined.
Add 3½ to 4 cups all purpose flour and ¾ teaspoon salt. Mix until a dough forms. Knead the dough for 8 to 10 minutes until smooth and slightly tacky but not sticky.
Place the dough in a lightly greased bowl, cover, and let rise for 1 to 1½ hours until doubled in size.
In a small bowl, combine 1 cup brown sugar, 2½ tablespoons ground cinnamon, and ¼ teaspoon salt.
Roll the risen dough into a large rectangle about 18 by 12 inches.
Spread ½ cup softened unsalted butter evenly over the dough. Sprinkle the cinnamon sugar mixture evenly on top. Gently press the filling into the butter. Roll the dough tightly from the long side into a log.
Cut into 9 large rolls using a sharp knife or unflavored dental floss.
Place the rolls in a greased 9×13 inch baking dish, leaving slight space between them. Cover and let rise for 45 minutes.
Preheat the oven to 350°F.
Just before baking, pour ¾ cup heavy cream evenly around and between the rolls in the pan. Bake for 23 to 27 minutes, or until the tops are lightly golden and the centers are set.
While the rolls bake, beat 4 ounces cream cheese and 2 tablespoons softened unsalted butter until smooth and fluffy.
Add ¾ cups powdered sugar, 1 tablespoons heavy cream, 1 teaspoon vanilla extract, and a pinch of salt. Beat for 3 to 4 minutes until light and spreadable.
Spread the cream cheese frosting over the warm rolls so it melts slightly into the layers.