Preheat your oven to 350°F.
In a saucepan, pour 2 cups of milk and add 1/2 cup of softened butter. Heat over low heat, stirring occasionally until the batter is completely melted. This creates a rich, buttery base for the dough.
While the milk and butter are heating, place 1/2 cup of lukewarm water in a bowl and sprinkle in 2 teaspoons of dry yeast. Stir slightly and let it sit for about for 5 minutes to allow the yeast to bloom. If your yeast doesn't become bubbly, it might be old and you may need to start over.
Once the milk and butter mixture has cooled to lukewarm, pour it into a mixing bowl. If using a stand mixer, attach the dough hook and mix in the bloomed yeast. Stir until well combined.
Mix in 1/2 cup of sugar, 1 tablespoon of cinnamon, 2 teaspoons of salt, and 2 eggs. Blend until the ingredients are evenly incorporated.
Slowly add flour into the mixture, one cup at a time. Let each addition absorb before adding the next. Use between 7 to 8 cups of flour, depending on how the dough feels. The dough should be soft but slightly sticky. Knead with the dough hook for 5-7 minutes, or until smooth and pulling away from the bowl.
Transfer the dough to a floured surface and shape it into a ball. Please it in a greased bowl, turning it to coat with the grease. Cover the bowl with a damp cloth and set it in a warm, draft-free area to rise for 1 1/2 to 2 hours, or until doubled in size.
Once the dough as doubled in size, punch it down gently and let it rise for another 30 to45 minutes until it puffs up again.
Turn the dough out onto a floured surface and divide it in half to make it easier to work with. Roll each half into a rectangle about 1/4 inch thick.
Spread 1/4 cup of softened cutter over the surface of each rectangle. Then, sprinkle on half of the filling mixture.
Roll each dough rectangle tightly from the long side, forming a log. Slice into 1 1/2-inch wide pieces. Place the rolls in a greased baking pan, making sure they are snug against each other. Cover the pan with a cloth and let the rolls rise for another 20 to 30 minutes.
Bake the rolls for the 25 to 30 minutes or until golden brown.
While the rolls bake, prepare the frosting. Beat together 1 (8-ouze) package of cream cheese and 1/2 cup of butter until light and fluffy. Mix in 1 teaspoon of vanilla, a pinch of salt, and gradually add in 3 cups of powedered sugar. Adjust the consistency by adding 2 to 4 tablespoons of milk until the frosting is spreadable.
Once the rolls have cooled for about 15 minutes, generously spread the frosting over each warm roll.