Patties: In a large bowl, gently but thoroughly combine all ingredients.
Form into 4 equal-sized thin patties roughly the size of the bread you will be using or in the case of the naan, 1/2 the bread size.
Cover the patties with plastic wrap and refrigerate for 30 minutes.
Onions: In a medium saute pan on medium heat melt the butter with the oil.
Add the onion and season with a pinch of salt and a couple of grinds of pepper, to taste.
Saute until the onions are caramelized, about 35 minutes, and set aside.
Preheat a griddle with 2 tablespoons of oil over medium-high heat.
Griddle the patties on the on both sides until crispy on the edges and cooked through, about 3 minutes per side.
Remove to a plate and wipe the griddle.
Assemble the sandwiches by layering each bread 1/2 with a slice of cheese, a patty, another slice of cheese, onions, and the other bread 1/2, in that order.
Brush or add 2 more tablespoons of oil to the griddle and put the sandwiches on the griddle.
Press on the sandwich with a spatula to help toast evenly and hold the sandwich together.
Cook until the cheese is melted and the bread is toasted, about 2 minutes on each side.