Pat the roast dry with paper towels. Season all over with 2 teaspoons of kosher salt and ½ teaspoon of black pepper.
Heat 1 tablespoon of olive oil in a large Dutch oven over medium-high heat until shimmering. Add the roast and sear until dark golden-brown on two sides, about 4 to 5 minutes per side. Transfer to a large plate.
Reduce the heat to medium. Add the remaining 2 tablespoons olive oil, onions, remaining salt, and remaining pepper to the pot. Stir well to combine. Cover and cook undisturbed for 5 minutes. Uncover, stir, cover again, and cook for 5 minutes more.
Uncover and continue to cook, stirring occasionally until the onions are a rich caramel brown color, 30 to 40 minutes.
Stir in minced garlic and cook for 1 minute. Sprinkle flour over the onions, stir well, and cook for 1 minute.
Stir in red wine and scrape up the browned bits from the bottom of the pot. Stir in beef broth, thyme, and bay leaves.
Return the roast and any accumulated juices to the pot and bring to a simmer. Cover and transfer to the oven. Cook until the meat is gently falling apart when pricked with a fork, 3 to 3 ½ hours.
Skim off some of the fat from the surface if desired. Remove and discard the thyme stems. Shred the roast into bite-size pieces right in the pot with tongs before serving. Garnish with more fresh thyme leaves if desired.