Warm the olive oil in a large skillet over medium heat. Add the chopped onion and sauté until soft and lightly golden. Stir in the garlic and cook briefly until fragrant. Add the ground beef and cook while breaking it apart with a spoon until fully browned. Stir in the tomato paste and cook for another minute to deepen the flavor. Pour in the red wine and scrape up any browned bits from the bottom of the pan. Add the tomato purée and beef broth, then mix in the parsley, thyme, bay leaves, salt, sugar, cinnamon, and black pepper. Reduce the heat and let the sauce simmer gently for about 30 minutes, stirring occasionally, until it becomes thick and rich.
Spread paper towels or a clean kitchen towel on your countertop. Arrange the eggplant slices in a single layer and sprinkle lightly with salt. Cover with more paper towels and layer the zucchini slices on top. Add another towel layer and place the potato slices over it. Press gently to help absorb excess moisture. Let the vegetables rest for 15 minutes. Removing moisture helps the vegetables fry better and prevents a watery casserole.
Heat oil in a deep pan to about 150°C (300°F).Start with the potatoes and fry them until lightly golden and tender. Transfer them to paper towels to drain. Increase the oil temperature to 170°C (340°F). Fry the zucchini slices until softened and lightly browned, then repeat with the eggplant slices. Place all cooked vegetables on paper towels to remove excess oil before assembling the dish.
Melt the butter in a saucepan over medium heat. Add the flour and whisk constantly for about 2 minutes to create a smooth roux. Slowly pour in the milk while whisking to prevent lumps. Continue whisking until the sauce thickens enough to coat the back of a spoon. Season with salt, nutmeg, and white pepper. Stir in the grated Pecorino Romano until melted and smooth. Whisk in the egg yolks quickly until fully blended. Take ½ cup of the béchamel and mix it into the prepared meat sauce to make the filling extra creamy.
Preheat the oven to 180°C (350°F).Arrange a layer of fried potatoes in the bottom of a baking dish. Sprinkle with parsley, grated Pecorino, salt, and pepper. Add a layer of zucchini slices and season again. Place half of the eggplant slices on top. Spread the meat sauce evenly across the vegetables. Add the remaining eggplant slices and finish by pouring the béchamel sauce evenly over the top.
Sprinkle a little extra Pecorino Romano on top for a golden finish. Bake the moussaka for 35–45 minutes, or until the top turns beautifully golden. Allow the dish to rest for 15 minutes before cutting. This helps the layers set and makes serving much easier.