Melt 4 tablespoons butter in a microwave-safe bowl for 40-45 seconds. Pour into a medium bowl and set aside.
Heat 1 cup milk in the microwave for 45 seconds until it reaches 100-110°F. Pour into the bowl with melted butter.
Stir in 1/4 cup sugar and 1 packet yeast until dissolved. Cover with a tea towel and let sit for 10 minutes until frothy and foamy.
While waiting, preheat your oven to its lowest setting (around 170°F).
After 10 minutes, remove towel and add 1 egg, 1/2 teaspoon salt, and 1 teaspoon vanilla extract to the yeast mixture.
Begin adding flour in 1/2 cup increments, folding with a spatula until combined. Add 3 to 3.5 cups total until dough is soft and slightly tacky but not sticky.
Form dough into a ball, cover with tea towel, turn oven OFF, and place covered bowl in warm oven to proof for 10 minutes.
While dough proofs, prepare the filling by combining 4 tablespoons softened butter, 1/2 cup brown sugar, 1/4 cup sugar, 2 tablespoons cinnamon, and 1 teaspoon vanilla with an electric mixer until smooth. Set aside.
Remove proofed dough from oven and place on a lightly floured surface. Roll into a 14 x 18-inch rectangle, about 1/4 inch thick.
Preheat oven to 350°F. Spread the cinnamon filling evenly across the dough using an offset spatula, leaving a small border.
Starting from the short side, tightly roll the dough away from you to form a log.
Use a dough scraper to pre-mark the log into 12 even pieces, then use a serrated knife to cut with gentle sawing motions.
Place cut rolls in a greased 9x13 inch baking pan, leaving space between each roll.
Bake at 350°F for 20-25 minutes until rolls are light golden brown.
While rolls bake, prepare icing by beating 4 oz cream cheese, 2 cups powdered sugar, 1 teaspoon vanilla, and milk (1 tablespoon at a time) until smooth and desired consistency.
Let rolls cool on a wire rack for 10 minutes, then drizzle generously with cream cheese icing while still warm. Serve and enjoy!