Shred the cooked chicken into bite-size pieces and set aside.
Cook lasagna noodles in salted water until al dente. Rinse with cold water and set aside.
Heat olive oil in a pan over medium heat. Add onion and cook until soft.
Stir in butter until melted, then whisk in flour to form a roux.
Slowly add chicken broth and half-and-half, whisking until smooth and thick.
Season with salt and pepper, add garlic, then stir in spinach until wilted. Remove from heat.
In a bowl, mix ricotta, egg, 1½ cups mozzarella, Parmesan, and parsley.
Spread a thin layer of sauce in a greased 9×13-inch baking dish.
Layer noodles, ricotta mixture, chicken, and sauce. Repeat layers.
Finish with sauce and remaining mozzarella on top.
Cover with foil and bake at 375°F for 40–45 minutes.
Uncover and bake 5–10 minutes until cheese is lightly golden.
Rest for 20–30 minutes before slicing and serving.