Remove the roast from the fridge and place it on a wire rack and baking sheet or roasting pan with baking sheet. Season equally on all sides with salt, pepper, garlic and onion powder. Leave the roast out for at least 90 minutes before roasting.
Preheat the oven to 300f.
Heat a large cast iron pan to medium-high heat with the oil and sear the roast on all sides then remove to a plate. Turn the heat down to medium and add the onions to the pan and season with salt and pepper. Saute for 5 minutes or until soft.
Place the roast on top of the onions, fat cap side up. Insert an oven-safe digital thermometer into the center of the roast.
Place the pan with the roast in the oven and cook until the center of the roast reaches 110-115f for rare, 125f for medium rare, or 135f for medium. The roast will take anywhere from 40-60 minutes depending on the level of doneness you choose.
Once the roast has finished cooking, move it to a cutting board and tent with foil. Meanwhile, make the onion gravy below.
Place the pan with onions on a burner and turn the heat to medium. Add the flour and cook, stirring frequently, until no white specks appear (about 1-2 minutes).
Add the white wine and turn the heat to high while whisking or stirring. Cook for 1 minute.
Add the beef stock, Worcestershire sauce, and Rosemary and bring to a simmer while stirring. Simmer for at least 5 minutes to reduce and thicken slightly.
Taste test the gravy and season with salt and pepper if required. Slice the roast against the grain and serve with the onion gravy. Enjoy!
