Melt 2 tablespoons of butter with the vegetable oil in a large skillet over medium-low heat. Add the sliced onions and stir to coat them evenly in the fat. Cook for about 25 to 30 minutes, stirring every few minutes, until the onions turn deep golden brown and smell sweet.
While the onions cook, add the ground beef to a mixing bowl along with the Worcestershire sauce, salt, and pepper. Mix gently with your hands just until combined, since overworking the meat makes the patties tough. Divide the mixture into 4 equal portions and shape them into thin oval patties that roughly match the size of your bread slices.
Once the onions are done, move them to a plate and wipe out the skillet. Heat the pan over medium heat and add the patties, letting them cook undisturbed for about 3 minutes so a good crust forms underneath. Flip once and cook for another 2 to 3 minutes until the beef is cooked through.
Lay out 4 slices of rye bread and top each with a slice of Swiss cheese, followed by a beef patty, a portion of the caramelized onions, and another slice of cheese. Close each sandwich with the remaining bread slices, pressing down gently so everything holds together.
Melt the remaining butter and brush it over the outside of each sandwich. Place the sandwiches in the same skillet over medium-low heat and cook for 3 to 4 minutes per side, pressing lightly with the spatula, until the bread is crisp and golden and the cheese has fully melted.