Pat the beef pieces dry with paper towels. Season all over with salt and pepper, then toss in the flour until lightly coated and shake off excess.
Preheat oven to 325°F (165°C). Heat 2 tablespoons olive oil in a Dutch oven over medium-high heat and sear the beef in two or three batches, about 3 minutes per side, until deeply browned. Transfer to a bowl.
Lower heat to medium, add butter, onion, and celery, and cook 3 to 4 minutes. Stir in garlic for 30 seconds, then add tomato paste and stir constantly for 1 to 2 minutes until darkened.
Pour in the red wine and scrape the bottom of the pot with a wooden spoon to lift all the browned bits. Simmer for 3 to 4 minutes until reduced by about half.
Return the seared beef and juices to the pot. Add beef broth, Worcestershire sauce, bay leaves, and thyme, stirring to combine. Bring to a gentle simmer over medium heat.
Cover the pot and transfer to the preheated oven. Braise for 1 hour 30 minutes.
Carefully remove the pot from the oven and stir in the carrots and potatoes. Return the covered pot to the oven and braise for another 45 minutes to 1 hour, until the beef pulls apart easily and the potatoes are fork-tender.
Remove the pot from the oven and discard the bay leaves. Stir in the thawed peas and let warm through for 2 to 3 minutes off the heat. Taste and adjust salt and pepper, then ladle into bowls and top with chopped fresh parsley.