Preheat the oven to 350°F/177℃. Spray a 9x13-inch baking dish lightly with cooking oil spray. Set aside.
Combine crushed crackers, melted butter, and parsley flakes in a small mixing bowl. Mix using a spatula until fully combined. Set aside.
Cook egg noodles according to package instructions to al dente. When ready, drain the noodles, and set them aside until ready to assemble the casserole.
Meanwhile, melt butter over medium-high heat in a large cast iron skillet, then add olive oil. Add onion, celery, minced garlic, and thyme when the oil is slightly hot and the butter melts. Saute for about 2-3 minutes until the onion is translucent.
Then add carrots, bell pepper, and Italian seasoning. Continue to saute for 3-4 more minutes until vegetables are slightly cooked. Sprinkle the flour over the veggies and stir until fully combined and the flour dissolves. Cook for another minute or two to remove the raw flour taste.
Reduce heat to low, then whisk in milk and continue stirring until the mixture thickens enough to coat the back of your spoon, about 3-5 minutes. Then stir in the cheddar and cream cheese, leaving about a handful of the cheddar cheese for the topping. Mix with a wooden spoon until completely melted.
Add drained egg noodles, ham, and Worcestershire sauce. Stir well—season with salt and pepper to taste.
Transfer the ham casserole into a prepared baking dish, then sprinkle the remaining cheese evenly over the surface and top with the cracker mixture. Bake at 350℉/177℃ until heated through and bubbly, 20-25 minutes.
As soon as the casserole is heated through, take it out of the oven, sprinkle the remaining shredded cheese and chopped fresh parsley over the top, and serve.