Preheat oven to 400 degrees. Spray a 9 x 13 inch baking dish with gluten-free non-stick cooking spray.
Bring a large pot of salted water to a boil. Cook the pasta for 6 minutes or until al dente.
Drain, rinse with hot water, toss with 1 tablespoon of olive oil and set aside.
Heat the remaining 2 tablespoons of olive oil in a large skillet over medium-high heat, add the chopped onions and cook until soft translucent, about 5 minutes. Add the minced garlic and cook for 30 seconds. Add the ground beef and cook until browned, about 5 minutes. Add the wine and cook until it has mostly evaporated.
Add the tomato sauce, stir into the mixture and cook for about 30 seconds, add the tomatoes, juice and all, 1 teaspoon of salt, ½ teaspoon pepper, the oregano, cinnamon stick lemon and bay leaves. Lower the heat to medium and continue to cook until the sauce is thick, about 25 minutes. Remove the cinnamon stick, lemon quarters and bay leaves.
While the meat sauce is simmering make the béchamel sauce. Melt the butter over medium-high heat in a skillet then whisk in the flour until smooth. Add the milk all at once and cook until thick enough to coat the back of a spoon, whisking frequently to keep lump-free. Add ¾ teaspoon of salt, ½ teaspoon of pepper and the nutmeg. Whisk the egg yolks in a small mixing bowl. Turn the heat off the sauce, ladle about ½ cup of the sauce into the beaten egg yolks and whisk until fully blended. Add the egg yolk mixture to the sauce and whisk the sauce is uniform in color and fully combined.
Layer half the pasta into the prepared baking dish, top with the meat sauce sprinkle on 1 ½ cups of the cheese and top with the rest of the pasta. Pour the béchamel sauce over the top, smooth with a spatula and sprinkle with the remaining cheese. Bake for about 35 minutes or until the top is golden brown.
This recipe can be prepared and baked later – cover with plastic wrap and refrigerate. Take out of fridge and let sit at room temperature while the oven preheats. Bake as directed.
To bake ahead and freeze prepare up to making the béchamel sauce, cover with a layer of plastic wrap and them a layer of foil. Freeze for up to a month. Defrost the casserole, prepare the béchamel sauce and bake as directed. To bake ahead and reheat just reheat at 350 degrees for about 10 minutes uncovered.