Heat the olive oil in a large skillet over medium heat. Add the sliced onions and cook, stirring frequently, until caramelized and golden brown, about 10-15 minutes.
Once the onions are caramelized, add the ground beef to the skillet. Cook until browned, breaking it apart with a wooden spoon, about 5-7 minutes.
Add the minced garlic and cook for an additional 1-2 minutes until fragrant. Season with salt, pepper, Worcestershire sauce, beef broth, Dijon mustard, and soy sauce. Stir well to combine.
Reduce the heat and let the mixture simmer for about 5 minutes, allowing the flavors to meld and the sauce to thicken slightly.
While the beef mixture is simmering, preheat your broiler to high.
Divide the beef mixture among the hamburger buns and place them on a baking sheet. Top each sandwich generously with shredded Gruyere cheese.
Broil the sandwiches for 2-3 minutes, or until the cheese is bubbly and golden brown. Keep a close eye to prevent burning.
Remove from the oven and garnish with chopped fresh parsley, if desired. Serve immediately.