In a large Dutch oven, heat olive oil over medium-high heat.
Add spinach and cover to heat for 1 minute.
Continuously toss the leaves until they are slightly wilted and bright green (2-3 minutes).
Transfer spinach to a strainer to drain liquid.
Transfer to work surface lined with paper towels.
Set aside to cool.
Wrap the spinach up in the paper towels and squeeze out any excess liquid.
Chop the spinach into ½ inch pieces.
In the same Dutch oven, melt butter over medium-high heat. Add shallot and cook until fragrant and translucent (about 5-6 minutes). Add garlic and cook for 1 more minute. Add salt, black pepper, cayenne pepper, nutmeg, and flour and stir to combine.
Slowly pour in half and half and bring to a low boil.
Add in mozzarella, cream cheese, and parmesan.
Reduce heat to low and cook until the mixture is thickened.
Add spinach and toss in the cream sauce.
Cook and stir until spinach is heated through and coated, about 2 minutes.
Serve immediately.