Grease a 9x13 baking dish.
For the dough, add the warm milk, 3 tbsp granulated sugar, and the yeast to the bowl of an electric mixer fitted with a dough hook. Cover the bowl with a towel and let sit for 5-8 minutes.
With the mixer on medium speed, beat in the remaining sugar and butter for 3 minutes. Add the eggs and salt and continue to mix to incorporate. Reduce to low and add the flour one cup at a time until everything is added and fully combined and the dough pulls away from the bowl. Knead the dough with the dough hook on low speed for 5 more minutes.
Lightly grease a large bowl. Move the dough from the mixer to the greased bowl and turn to coat. Cover with a towel and place in a warm space to rise for 2 hours.
Punch the dough to remove the air and place on a lightly floured surface. Roll the dough out to a 12x18 rectangle making sure the dough is an even thickness.
For the filling, evenly spread the soft butter over the dough. In a small bowl, add the cinnamon and nutmeg and stir. Sprinkle the dough with brown sugar. Top with the cinnamon and nutmeg. Roll the dough into an 18” log. Cut 12 rolls from the log and place into the prepared baking dish. Cover tightly with foil and refrigerate overnight but not more than 14 hours.
Remove the rolls from the fridge and let rise for 2 hours before baking.
For the icing, add the cream cheese to the bowl of an electric mixer fitted with a paddle and beat until smooth. Add the sugar, milk, and vanilla and beat until smooth, creamy, and fully mixed. Add more milk to thin if needed.
Bake the rolls at 350F for 30 minutes or until browned. If the rolls get too brown after 15-20 minutes, lightly cover with foil to prevent burning.
Let the rolls rest for 10 minutes before icing. Serve immediately.