Place bread slices on a work surface. Using a butter knife, spread 1 teaspoon mayonnaise or butter evenly over 1 side of each slice.
Place 2 slices (mayo or butter side down) into a 12-inch nonstick skillet. Spread the top (dry side) of the 2 bread slices in skillet with the remaining mayonnaise or butter.
Place 2 slices of the cheese in an even layer on each bread slice in skillet. Top with the ham, divided evenly between the 2 slices. Top with the remaining cheese (2 slices per sandwich). Spread 1 teaspoon mayonnaise or butter evenly over the dry side of the remaining 2 bread slices, then spread with mustard. Close each sandwich with the remaining bread slices, mustard side down. Using a spatula, press firmly to adhere.
Heat skillet over medium heat and cook until bread is golden brown on bottom, 4 to 6 minutes. Flip sandwiches. Set an empty large Dutch oven or other heavy skillet or cooking weight directly on top of sandwiches, reduce heat to medium-low, and cook until second side is golden brown and cheese is melted, 2 to 4 minutes.
Transfer sandwiches to a cutting board, cut in half and serve warm.