Shred all the cheeses. Set aside 1 cup each of cheddar, Colby Jack, and mozzarella for topping. Measure out your butter.
Boil the noodles until just firm. Save ½ cup of the pasta water, then drain. Toss the pasta with 2 tablespoons of butter in a casserole dish.
Melt 5 tablespoons of butter in a skillet over medium heat. Add garlic and cook for 1 minute. Stir in flour and cook until it turns golden.
Slowly whisk in the pasta water, heavy cream, and half-and-half. Cook until it thickens, about 4 minutes. Lower the heat and stir in the shredded cheeses a bit at a time until smooth. Add cream cheese and seasonings, then mix until creamy.
Pour the cheese sauce over the buttered pasta. Stir to combine. Sprinkle the reserved shredded cheese on top.
Bake at 425°F for 10 minutes until bubbly. Then broil for about 5 minutes until the top is golden and crispy.
Cool for 3–5 minutes, then serve warm.