Preheat the oven to 325°F with the rack in the middle.
Pat beef dry and season with salt and pepper. In a large Dutch oven or heavy pot, heat 1 tablespoon olive oil over medium-high heat until hot and shimmering. Brown meat in 3 batches, turning, about 5 minutes per batch, adding 1 tablespoon more oil for each batch. (To sear meat properly, do not crowd the pot and let meat develop brown crust before turning.) Transfer meat to a large plate and set aside.
Add onions and garlic and sauté for 2 minutes. Add vinegar and cook, stirring with a wooden spoon to scrape brown bits from the bottom of the pot, about 3 minutes. Add tomato paste and cook a few minutes. Return beef with juices to the pot and sprinkle with flour. Stir until flour is dissolved, 1-2 minutes. Add broth, bay leaves, thyme, and sugar; stir to loosen any brown bits from the bottom of the pot and bring to a simmer. Cover pot with a lid, transfer to preheated oven, and braise for 2 hours.
Remove pot from oven and add carrots and potatoes. Cover and place back in the oven for 50-60 minutes, or until vegetables are cooked and meat is very tender. Taste and adjust seasoning, if necessary. Add pearl onions and cook another 10 minutes. Serve immediately, garnished with fresh parsley or thyme, if desired.
Alternatively, let cool and then refrigerate overnight or until ready to serve. This stew improves in flavor if made at least 1 day ahead. Reheat, covered, over medium heat or in a 350°F oven, until warmed through.