Melt butter in a large skillet over medium heat. Add onion and cook, stirring frequently, until onion is tender (about 3 to 4 minutes).
Add garlic and cook until fragrant, stirring constantly (about 30 seconds).
Add heavy cream, cream cheese, salt, pepper and nutmeg. Stir until cheese is melted and mixture is smooth.
In a bowl or large measuring cup, whisk together milk and flour. Pour into mixture and stir to combine.
Cook, stirring constantly, until thickened (about 3 minutes).
Add spinach and stir well to combine. Cook (stirring frequently) until spinach is heated, about 1 to 2 minutes. Season with additional salt and pepper, if desired.
Sprinkle with freshly grated Parmesan, if desired.