Make the brisket: Combine the chili powder, mustard powder, brown sugar, cayenne, 2 teaspoons salt and 1/2 teaspoon black pepper. Rub on the brisket, cover and refrigerate overnight.
Remove the brisket from the refrigerator about 1 hour before cooking and let sit at room temperature. Soak a few handfuls of mesquite or hickory wood chips in water 30 minutes; drain.
Preheat a grill to low, then prepare for indirect heat: For a gas grill, turn off the burners on one side; put the wood chips in a smoker box and position under the grate over the heated burners. For a charcoal grill, push the coals to one side; once the temperature registers 200 degrees F (you should be able to hold your hand 5 inches from the coals for 6 seconds), scatter the wood chips on top. Position a drip pan under the grate on the cooler side of the grill.
Put the brisket fat-side up on the grill above the drip pan. Cover and grill, undisturbed, until a thermometer inserted into the thickest part registers 185 degrees F to 200 degrees F, 3 hours, 30 minutes to 5 hours. If using a charcoal grill, leave the vents nearly closed and scatter 6 to 8 unlit charcoal briquettes and a handful of prepared wood chips on top of the lit coals every 45 minutes to 1 hour. Remove the brisket from the grill, wrap in foil and let rest at least 30 minutes. Pour the drippings from the drip pan into a bowl and let cool completely.
Meanwhile, make the barbecue sauce: Heat the vegetable oil in a medium saucepan over medium heat. Add the garlic and cook, stirring, 30 seconds. Add the chili powder and cook, stirring, until brick red, about 30 seconds. Stir in 1 1/2 cups water, the vinegar, ketchup, lemon juice, Worcestershire sauce, brown sugar, mustard, allspice and 3/4 teaspoon black pepper. Bring to a low simmer and cook, stirring occasionally, until slightly thickened, 45 to 55 minutes. Remove from the heat and let cool slightly.
Whisk the reserved drippings, then whisk 1 to 2 tablespoons into the barbecue sauce. Thinly slice the brisket against the grain. Serve with the barbecue sauce.
Dry cast-iron pans thoroughly with paper towels after washing to keep them from rusting.