In a covered large skillet cook onions in hot oil over medium-low heat for 15 minutes, stirring occasionally. Stir in mushrooms. Cook, uncovered, over medium heat about 8 minutes or until onions are golden and mushrooms are tender and lightly browned, stirring occasionally. Remove from heat.
Cut each bacon slice in half crosswise. Layer four of the bread slices with bacon, mushroom mixture, tomato, and cheese. Top with the remaining four bread slices. Lightly coat outsides of sandwiches with cooking spray.
Preheat a nonstick grill pan over medium heat. Place sandwiches, half at a time if necessary, in pan. Weight down with a heavy skillet and cook for 1 to 2 minutes or until bread is toasted. Turn sandwiches, weight down again, and cook for 1 to 2 minutes more or until bread is toasted and filling is heated through.