Preheat oven to 375°F. Lightly spray a 1 ½ to 2 quart baking dish with vegetable cooking spray and set aside.
Cook the pasta al dente, per package instructions. Drain well.
Return the cooked pasta to the pot and add the butter. Toss to coat until all butter is melted.
In a small bowl with a spout, whisk together the evaporated milk, regular milk, egg, cayenne and black pepper.
In a separate small bowl or ziplock bag, combine the American, Gouda and Cheddar cheese.
Spread ⅓ of the pasta in the bottom of the prepared casserole dish. Top with ½ of the ham. Sprinkle ⅓ of the cheese mixture on top of the ham and pasta.
Repeat again starting with the cooked, buttered pasta, the remaining ham, and ⅓ of the shredded cheese. Finally, spread the remaining pasta and cheese on top.
Pour the egg and milk mixture over the top of the casserole. Top with a few extra pieces of ham if desired.
Bake until the casserole is set and lightly browned on top, about 30 minutes.
Remove from the oven and allow the casserole to cool for 5-10 minutes before serving.