In a large pot or dutch oven, melt 3 tbsp salted butter over medium heat. Once melted, add ½ tsp garlic powder, ½ tsp onion powder, ¼ tsp smoked paprika, and a pinch of cayenne pepper. Use a silicone spatula or whisk to stir the spices into the butter for about 1 minute until very fragrant.
Add 3 tbsp flour to the spiced melted butter and immediately stir until fully combined into a paste. Continue cooking and stirring this for about 1-2 minutes to cook the flour fully. Then, gradually pour in 1 can of evaporated milk while stirring simultaneously. Continue stirring or whisking until fully combined and there are no more lumps in the sauce. Whisk in 4 cups of chicken or vegetable stock.
Bring the contents of the pot to a gentle boil, then add 1½ cups elbow macaroni and stir to combine. Cook this over a simmer while stirring frequently to prevent the noodles from sticking to the pot. Once the noodles are cooked about 90% of the way through, remove the pot from the heat source.
Stir in 2 slices of American cheese until it is fully melted. Once that is melted, gradually stir in 2½ cups of shredded cheddar cheese until fully combined. Then, gradually stir in ¾ cup of shredded Gruyere cheese. Once all the cheese is fully melted and combined with the soup, add 1 tsp Dijon mustard and a few pinches of kosher salt along with some cracked black pepper to your liking. Taste and adjust seasoning as needed.
Serve the soup in bowls and garnish with sliced fresh chives and a bit more black pepper.