Over medium-high heat, add ¼ cup olive oil and sauté the garlic, onion, and half each of a red and green bell pepper. Cook for 8-10 minutes until soft and caramelized, then season with salt and pepper to taste.
Add tomato paste and sauté for about 3 minutes until it browns slightly, for a richer, deeper flavor.
Add ground meat, break it up, and cook until lightly browned for about 15 minutes. Season with a teaspoon of kosher salt (use half for table salt) and ground pepper to taste.
Add crushed tomatoes, 2 cups of water, garlic powder, onion powder, dried oregano, dried bay leaves, sugar (or more), salt (about 1 teaspoon kosher salt), and pepper to taste. Mix them up.
Cover and let it simmer over medium heat for about 15 minutes. Taste it and adjust as needed. After cooking, remove the bay leaves, then set the sauce aside.
Preheat the oven to 400° F (204° C). Boil a pot of salted water for the pasta.
In a saucepan, melt butter over medium heat. Add flour and stir until it forms a thick paste or a roux. Cook for about a minute before it turns brown, just long enough to remove the raw flour taste.
Add some warm milk to loosen up the thick roux, then add the rest. Add nutmeg, a pinch of salt, and black or white pepper to taste.
Whisk until smooth and slightly thickened, about 5 minutes. Set it aside.
Return to the boiling water and cook the pasta for 2 minutes less than what the package instructions recommend for al dente; it’ll finish cooking in the oven.
Drain the pasta and combine it with the meat sauce in a casserole dish. Pack them lightly and even out the top.
Spread the béchamel sauce evenly, then sprinkle cheddar and mozzarella cheese on top.
Bake for 20 to 30 minutes until the edges are bubbling and the top has nicely browned.