Make the onion spread: Heat the vegetable oil in a large skillet over medium-low heat. Add the onion and a pinch of salt; cover and cook, stirring, until golden, about 35 minutes. Add the shallots and scallion whites; cover and cook, stirring, until browned, about 25 more minutes. Stir in the scallion greens, then remove from the heat and let cool.
Chop the onion mixture and transfer to a bowl. Add the sour cream, mayonnaise, vinegar, Worcestershire sauce and 1 teaspoon salt. Cover and refrigerate at least 2 hours and up to 1 day.
Make the beef for the sandwiches: Mince the garlic, then sprinkle with 1 teaspoon salt and mash into a paste with the flat side of a large knife. Transfer to a bowl; add the olive oil, celery salt, cayenne and 1/2 teaspoon black pepper. Cut small slits all over the beef with a knife, then use your fingers to push the garlic paste into the slits. Cover; refrigerate at least 1 hour or overnight.
Preheat the oven to 425 degrees F. Bring the beef to room temperature. Sprinkle with 2 teaspoons salt and 1/2 teaspoon pepper. Place on a rack in a roasting pan; add 1 cup broth, 3/4 cup water, the celery, onion and parsley to the pan. Roast 10 minutes, then reduce the oven temperature to 350 degrees F and roast until a thermometer inserted into the center of the beef registers 115 degrees F, about 45 more minutes. Transfer to a cutting board; let rest 20 minutes. Strain the pan juices; reserve.
Meanwhile, make the jus: Melt the butter in a medium saucepan over medium heat. Add the flour and cook, stirring, 1 minute. Whisk in the reserved pan juices and the remaining 3 cups broth and bring to a boil, whisking. Remove the pan from the heat and stir in the sherry.
Brush the rolls with some of the onion spread. Thinly slice the beef against the grain. Dunk the slices in the jus, then layer on the rolls. Serve the remaining jus in small bowls for dipping.