Prepare the Dough: In a large mixing bowl or the bowl of your stand mixer, combine the warm milk, sugar, yeast, melted butter, eggs, and salt. Mix well.
Add the Flour: Gradually add the flour, mixing until a soft dough forms. Knead the dough for 5-7 minutes, until smooth and elastic.
First Rise: Place the dough in a lightly oiled bowl, turning to coat. Cover with plastic wrap and let rise in a warm place for 1-1.5 hours, or until doubled in size.
Prepare the Filling: In a medium bowl, combine the softened butter, brown sugar, and cinnamon. Mix until well combined.
Roll Out the Dough: On a lightly floured surface, roll the dough into a large rectangle, about 18x12 inches.
Spread the Filling: Spread the cinnamon-sugar filling evenly over the dough, leaving a small border along one edge.
Roll It Up: Starting from the opposite edge to the small border, tightly roll the dough into a log. Pinch the edge to seal.
Slice and Arrange: Using a serrated knife, slice the log into 12 even rolls. Place the rolls in a greased 9x13 inch baking pan.
Overnight Proof: Cover the pan with plastic wrap and place it in the refrigerator overnight or for up to 24 hours.
Bake: Preheat oven to 350°F (175°C). Remove pan from refrigerator and let sit for 30 minutes. Bake for 25-30 minutes, or until golden brown.
Prepare the Frosting: While the rolls are baking, prepare the cream cheese frosting. In a medium bowl, beat the softened cream cheese and butter until smooth and creamy. Gradually add the powdered sugar and vanilla extract, mixing until well combined.
Frost and Enjoy: Let the rolls cool slightly before frosting generously. Serve warm.