Heat oil in a nonstick skillet over medium-high heat. Lower heat to medium. Add onions and saute, stirring, until edges are browned, about 10 to 12 minutes. Season with salt and freshly ground black pepper, to taste.
Place 3/4-ounce Cheddar on 1 slice bread. Spread 1 tablespoon caramelized onions on top of cheese and top with 3/4-ounce pepper Jack. Top with 1 large or 2 medium slices tomato and other slice of bread. Repeat with 3 other sandwiches.
Spray a nonstick skillet or griddle with cooking spray and heat until hot. Place sandwich on griddle and weigh down with a heavy skillet or plate. Lower heat to medium-low and grill until underside is a deep brown but not burnt and cheese is partially melted, about 5 to 6 minutes. Flip sandwich and grill other side, an additional 4 to 5 minutes. Slice in half and serve hot.