Preheat oven to 350 degrees. In a pot, boil cavatappi noodles according to the package directions until al dente. Shred all of the cheese and divide evenly into two bowls. In a small bowl, combine garlic powder, onion powder, smoked paprika, salt and pepper and mix.
In a skillet or large saucepan on medium heat, melt butter. Add in half of the seasonings to the butter to bloom the seasonings about 1 minute. Whisk in flour to create a roux. Whisk constantly to make sure the flour does not burn. Cook roux about 2-3 minutes.
Add can of evaporated milk. Whisk until all of the clumps from the roux are mixed in. Cook about 1-2 minutes as sauce begins to thicken. Whisk in dijon mustard.
Whisk in heavy cream. Add in small increments until all of the heavy cream is added. Bring the heat down to low heat. Slowly add one bowl of the shredded cheeses a handful at a time and whisk into sauce. Make sure the cheese that was previously added is melted before adding more cheese. Add the rest of the seasonings and mix in. Fold cooked pasta into the sauce.
In a large baking dish, add half of the pasta folded into the sauce. Layer half of the second bowl of shredded cheese over the pasta. Add the rest of the pasta and cheese sauce on top of the cheese. Layer the rest of the cheese on top.
Place macaroni in preheated oven. Bake 20-30 minutes or until top is slightly golden brown and melted and macaroni is bubbly. For an extra crisp on top, broil 2-3 minutes. Remove from oven, serve immediately or save for later.