Preheat oven to 350 degrees. Spray a 9" x 13" casserole dish with cooking spray and set aside.
Bring a large pot of salted water to a boil. Add pasta and cook 2 minutes less than package directions. Drain and set aside.
Trim chicken breasts then dice into bite-sized pieces. Place a large skillet over medium-high heat then add olive oil. When oil is shimmering, add chicken, salt, pepper and garlic powder and cook about 10 minutes, stirring occasionally, until chicken is cooked through and lightly browned on edges. Remove chicken from pan and tent with foil to keep warm.
Melt 4 Tbsp butter in the same pan and add 4 Tbsp flour. Cook flour for about 30 seconds before stirring in milk and Dijon mustard. Stir until flour is dissolved and bring liquid to a boil.
Reduce heat to medium-low and allow mixture to simmer for 3 minutes. Add 1/2 cup of cheese to the sauce. (Reserve the remainder of the cheese for the top.) Stir to melt into the sauce. Add chopped ham then stir to combine. Season to taste with additional salt and pepper, if necessary.
In a large bowl, combine sauce and cooked fusilli. Transfer to prepared dish and sprinkle top with remaining 1/2 cup of cheese and toasted breadcrumbs.
Transfer to the oven and cook 20-25 minutes or until bubbly. Remove from the oven and serve immediately.
Notes
This recipe is perfect for weeknights or whenever you want to feed a crowd!