Fry the bacon until crispy. Place on paper towels to drain.
Slice onion into thin strips.
Melt 1 tablespoon butter in a small skillet; add onions and cook over very low heat for 30 minutes, stirring occasionally. The onions should turn a deep golden color and taste sweet.
Melt the remaining butter and whisk with the mustard and Worcestershire sauce.
Preheat the oven to 350 degrees.
Cut foil into large squares for wrapping each sandwich. Brush the bottom of each bun with butter mixture on both sides.
Top with ham, onions, bacon, and cheese. Brush the top of the bun with butter on both sides, place on the sandwich, and wrap with foil. Repeat for remaining sandwiches.
Bake for 20 minutes or until warmed through and cheese is melted.
Store leftovers in the fridge with a piece of wax paper between them to prevent sticking. Reheat leftovers in the oven wrapped in foil or in the microwave for 1 minute.