Melt butter in a saucepan over medium heat. Add garlic and onion, sauté until soft.
Stir in flour, whisking for 1-2 minutes to create a roux.
Slowly add warm milk, chicken broth, and heavy cream, whisking constantly to prevent lumps.
Stir in Dijon mustard, thyme, nutmeg, salt, and pepper. Let simmer until thickened (about 5 minutes).
Remove from heat and stir in parmesan cheese. Set aside.
In a bowl, mix mascarpone, goat cheese, egg, parmesan, and parsley until smooth.
Preheat oven to 375°F (190°C).
Spread a thin layer of white sauce in a greased 8x8-inch baking dish.
Add a layer of lasagna noodles, then a spread of mascarpone-goat cheese mixture, shredded rotisserie chicken, a handful of baby spinach (if using), a mix of mozzarella and gruyère, and a drizzle of white sauce.
Repeat layers until used up, finishing with noodles, sauce, and a final sprinkle of mozzarella and gruyère.
Cover with foil and bake for 25 minutes.
Remove foil and bake another 10-15 minutes, until golden and bubbly.
Let rest for 10 minutes before slicing.
Alternatively, freeze it unbaked for an easy make-ahead dinner. Just bake straight from the freezer at 350°F for about 40-50 minutes, covered, then uncover for the last 10 minutes for a crispy top!
