1 1/2 pound beef top round roast
2 tablespoons vegetable oil
1 medium carrot, roughly chopped
1 large onion, roughly chopped
2 stalks celery, roughly chopped
1 quart low-sodium chicken broth
2 bay leaves
4 sprigs thyme
3 tablespoons butter
3 tablespoons all purpose flour
2 medium cloves garlic, minced (about 2 teaspoons)
2 teaspoons freshly ground black pepper
Two 18-inch loaves soft crusty French bread
1/2 cup mayonnaise
16 Kosher dill pickle slices
1 large tomato, thinly sliced
2 cups shredded iceberg or romaine lettuce
Adjust oven rack to lower middle position and preheat oven to 225°F. Pat beef dry. Heat vegetable in large Dutch oven over high heat until smoking. Add beef and cook until well browned on all sides, about 10 minutes total, reducing heat if bottom of pot begins to burn. Set beef aside. Add carrots, onion, and celery to pot and cook, stirring frequently and scraping up browned bits from bottom of pan until vegetables are well-browned and beginning to tenderize, about 8 minutes total. Return beef to pot and add chicken stock, bay leaves, and thyme. Bring to a boil, cover pot, and place in oven. Cook until beef is fork tender, but not falling apart, about 2 hours.
Remove beef from oven and allow to cool for 2 hours at room temperature. Place entire pot in refrigerator and allow to cool in liquid overnight. The next day, open pot, remove beef, and carefully spoon off any solidified fat from surface of stock. Strain stock through fine mesh strainer and discard solids. You should have about a quart of stock.
Adjust oven rack to lower middle position and preheat oven to 350°F. Heat butter in medium saucepan over medium heat until foaming. Add flour and garlic and cook, stirring constantly with wooden spoon until amber in color with a nutty, garlicky aroma. Slowly pour in stock, whisking constantly. Bring to a boil over high heat then reduce to a simmer. Add black pepper. Reduce until thick gravy-like consistency is reached, about 10 minutes. Season to taste with salt.
Meanwhile, slice chilled beef into 1/8th inch slices and arrange in 13 by 9 baking dish along with any beef “debris” that collects on cutting board. Pour hot gravy over top. Cover tightly with aluminum foil and place in oven until beef is completely tender, about 1 hour.
Split French rolls in half crosswise then open up lengthwise. Place bun bottoms on rimmed baking sheet. Spread with half of mayonnaise. Divide beef and gravy evenly between bun bottoms. Place tops on sandwiches and toast in oven until crisp, about 5 minutes. Remove from oven, open tops, and place pickles, tomato, and lettuce on top of beef. Serve immediately.