For the rub: In a small bowl, add the garlic, chile powder, salt, and cumin.
Rub the spice mixture over the entire skirt steak and let sit for 25 to 30 minutes in a dish or a re-sealable bag.
For the sauce: Meanwhile, in a medium sized saucepan, melt the butter and sauté the onion until fragrant and translucent. Deglaze with beef broth and bring to a simmer. Stir in the remaining ingredients and cook for 15 minutes over medium heat until sauce has thickened.
For the steak: Preheat a grill pan over high heat. Place the steak on the grill and cook for 4 to 5 minutes per side for medium-rare. Pull off the grill and glaze with BBQ sauce before resting for 5 minutes.
Slice skirt steak against the grain and serve with extra BBQ sauce.