Pat the meat dry with paper towels and season well on all sides with salt and pepper. Heat the oil in a large Dutch oven over medium-high heat, add the roast and brown all sides, about 4 minutes per side. Transfer the meat to a plate and add the mushrooms. Season with salt and pepper and cook, stirring occasionally, until browned and beginning to release liquid, about 5 minutes.
Add the onions and broth and stir until combined. Nestle the roast into the vegetables, adding any juices it released to the pot. Add the beef broth, bring to a simmer, cover, and transfer to the oven to roast for 2 1/2 hours. Remove the lid, carefully flip the meat and continue cooking for 30 minutes; the meat should be fork tender and the liquid reduced.
Remove the pot from the oven, transfer the meat to a cutting board and tent with foil to keep it warm. Let the mushrooms and onions stand several minutes undisturbed to allow some of the beef fat to rise to the surface. With a large spoon, skim off the excess fat and discard. With a ladle, add about 1 1/2 cups of the mushrooms and onions with some cooking liquid to the bowl of a blender or food processor. Carefully puree the mixture until very smooth. Pour the puree back into the pot and stir very well until combined; taste and adjust seasoning.
To serve, slice the pot roast and arrange on a serving platter. Drizzle some mushroom gravy over the top and pass the extra gravy at the table.