Heat the butter and oil over medium heat in a heavy-bottomed medium saucepan. Add the onions and garlic and cook until translucent, 3 to 4 minutes. Add 2 cups bourbon and cook until completely reduced. Add the tomatoes and water, bring to a boil, and then simmer for 10 minutes. Add the remaining ingredients, excluding the salt, pepper, and steaks, and simmer for an additional 20 to 25 minutes, stirring occasionally. Transfer the mixture to a food processor and puree until smooth. Season with salt and pepper, to taste. Pour into a bowl and allow to cool slightly. Whisk in the remaining 2 tablespoons of bourbon.
Heat grill to high. Season steaks on both sides liberally with salt and pepper and rub some of the spice rub from the onions onto 1 side of the steaks. Place steaks on grill, spice rub side down, and grill until slightly charred and crusty, about 4 to 5 minutes. Brush the steaks with some of the Bourbon-BBQ baste and turn steaks over; reduce heat of the grill to medium-low and cook to medium-rare doneness, about 8 to 9 minutes longer. Brush with the Bourbon-BBQ baste every 2 minutes. Remove from the grill, brush with more of the baste, and let rest for 5 minutes before slicing into 1/4-inch thick slices.
Heat grill to high.
Whisk together all spices in a small bowl until combined. Brush onions with oil on both sides. Rub 1 side of each onion with some of the spice mixture and place rub side down on the grill. Grill until golden brown and a crust has formed. Turn the onions over and continue grilling until just cooked through. Serve with the steaks.