Prepare the dough. Dissolve yeast and sugar in warm milk and let sit for 10 minutes or until mixture becomes creamy.
Combine flour with olive oil and salt in a large bowl. Add yeast mixture and mix until dough forms. Knead until smooth, about 5-7 minutes. Lightly oil a bowl and transfer the dough to the bowl, turning to coat. Cover and let proof for 1 hour or until doubled in size.
Meanwhile, prepare filling. In a large bowl, combine softened cream cheese with mozzarella, ½ cup parmesan, spinach, artichoke hearts, garlic powder, salt, and black pepper.
Dust a clean work counter with flour. Punch down the dough and roll it until it's ¼ inch thick rectangle, about 15x11 inches. Spread the spinach artichoke filling in an even layer and roll the dough starting from the long end into a tight log. Cut the log into 10 equal pieces.
Spray a 9x13 baking dish with cooking spray and sprinkle 2 tablespoons parmesan on the bottom. Arrange rolls in the baking dish with the cut sides facing up. Leave space in between the rolls, allowing them to rise. Loosely cover and let proof for 30 minutes.
Bake for 18-20 minutes or until golden brown. Meanwhile, combine melted butter with grated garlic. As soon as the rolls come out of the oven, brush them with garlic butter. Enjoy warm.
Notes
You can prepare the spinach artichoke filling the day before. Let it come to room temperature before spreading on the dough.