Melt the butter in a large saucepan over medium heat. Add the onions and garlic to the pan and saute until soft and translucent, 3 to 4 minutes. Add the flour and cook, stirring with a wooden spoon, to make a light roux, about 2 minutes. Whisking constantly, slowly add the milk and continue to cook, stirring occasionally until thickened, 5 minutes. Add the salt, pepper, nutmeg, spinach and 1 1/2 cups of the Parmesan and cook, stirring, until thickened, about 2 minutes.
Remove from the heat. Place a piece of plastic wrap directly on the surface of the creamy sauce until ready to assemble the lasagna.
Set a large, 12-inch saute pan over medium heat and add the olive oil. Brown the sausage until golden brown and cooked through, about 4 to 5 minutes. Stir in artichokes. Transfer to a plate to cool and set aside.
Preheat the oven to 375 degrees F.
Coat a 9-by-13 inch baking dish with olive oil, and spread about 1/2 cup of the bechamel sauce on the bottom of the dish. Lay 3 sheets of pasta across the bottom of the dish and spread 3/4 cup of the bechamel sauce over the pasta. Sprinkle 1/4 of the chicken and artichoke mixture over the bechamel sauce, then sprinkle with 1/4 cup of the remaining Parmesan. Lay another 3 sheets of pasta over the chicken and artichokes. Repeat 2 additional times with the remaining bechamel sauce, chicken and artichokes, Parmesan, and pasta, ending with a layer of pasta covered with bechamel sauce. Sprinkle the remaining 1/2 cup of Parmesan over the bechamel sauce and scatter the butter pieces over the top. Place the casserole on a lined baking sheet and bake, uncovered, until bubbly and beginning to brown, about 45 minutes.
Remove from the oven and cool for at least 20 minutes before serving.