Sear the beef short ribs in a large pot over medium-high heat until browned on all sides, about 5–7 minutes. Remove and set aside.
In the same pot, add sliced onions and reduce heat to medium. Cook until caramelized, about 20–25 minutes, stirring occasionally.
Return short ribs to the pot, pour in beef broth, add thyme and balsamic vinegar. Bring to a boil, then reduce heat and simmer for about an hour.
Remove short ribs, shred the meat from the bones, and return it to the broth.
Ladle soup into bowls, top with shredded Gruyère cheese, and broil for about 5 minutes until bubbly and golden brown.