Add drained tuna to a bowl and gently break it into flakes using a fork.
Add mayonnaise, chopped onion, celery, salt, and black pepper. Mix until creamy but slightly chunky.
Lay bread slices flat and spread butter evenly on one side of each slice.
Place two slices butter-side down. Add tuna mixture evenly over each slice and spread gently.
Place cheese slices on top of the tuna mixture, covering most of the surface.
Top with remaining bread slices, keeping buttered sides facing outward. Press lightly.
Heat a pan or grill on medium heat. Place sandwiches on the hot surface.
Cook for 3 to 4 minutes until the bottom becomes golden brown and crispy.
Flip carefully and cook the other side for another 3 to 4 minutes until golden and cheese is melted.
Remove from heat and let rest for 1 minute before slicing.
Cut diagonally and serve warm.