Preheat oven to 325F (160C) and arrange a rack to the center of the oven (make sure your covered Dutch oven will fit in there).
Pat meat dry with paper towels then season all over with salt and pepper.
Heat oil over medium-high heat in Dutch oven. Once shimmering, add the beef and sear on all sides (about 2-3 minutes per side, while searing allow the meat to sit undisturbed, moving it while it cooks will diminish the sear).
Once seared, remove to a plate. Reduce stovetop heat to medium and toss 2 Tablespoons of butter into the skillet. Once melted, add onion and cook until softened.
Add garlic and cook until fragrant (30 seconds).
Add basil, thyme, paprika, salt, and pepper and stir briefly.
Drizzle in red wine vinegar, scraping the bottom of the pan to loosen any browned bits that may be on the bottom. Cook until vinegar is reduced and the steam is no longer pungent if you sniff it.
Add beef broth and stir, then add baby potatoes and carrots. Add bay leaves and submerge them into the liquid. Add chuck roast over the veggies (and add any juices that may have pooled on the plate to the pot as well), nestling it gently into the liquid (it will not be submerged). Place remaining butter (1 Tbsp) on top of the roast.
Cover with lid, transfer to center rack of oven, and cook for 2 ½ -3 hours. Check roast by piercing/tugging with a fork. If it doesn’t come apart easily with a fork, return to the oven and cook until tender (I check every 20-30 minutes).
Once cooked, remove roast to a plate and shred, discarding any large pieces of fat. Remove bay leaf from pot then return the meat to the pot, stir and serve, garnished with parmesan cheese and parsley.