Pat lamb cubes completely dry with paper towels.
Heat olive oil in a large Dutch oven over medium-high heat until shimmering.
Season lamb with salt and pepper on all sides.
Sear lamb in batches for 3 minutes per side until deeply browned.
Remove lamb and set aside, leaving drippings in pot.
Add diced onion to the hot drippings and cook for 5 minutes until translucent.
Stir in carrots and celery, cooking for 4 more minutes until slightly softened.
Add minced garlic and cook for 1 minute until fragrant.
Sprinkle flour over vegetables and stir constantly for 2 minutes to cook out raw taste.
Pour in red wine, scraping bottom to release all browned bits.
Whisk in beef broth until smooth and no flour lumps remain.
Stir in tomato paste, bay leaves, and dried thyme.
Return seared lamb and any accumulated juices to the pot.
Bring stew to a boil, then immediately reduce heat to low. Cover and simmer for 1 hour and 30 minutes, stirring occasionally.
Remove lid and simmer uncovered for 30 minutes to thicken sauce.
Discard bay leaves before serving.