Preheat the grill to medium heat.
Bring the steaks to room temperature, about 20 minutes. Rub the steaks with olive oil and season with salt and pepper, to taste. Set aside.
In a medium-size saucepan, melt the butter and oil over medium heat. Add the onion and garlic and saute, stirring frequently, until softened but not browned, being careful not to burn the garlic. Add chili powder, cumin, coriander, cinnamon, cocoa and paprika and cook until fragrant, about 1 minute. Add the tomato sauce and brown sugar and cook, stirring until sugar is dissolved, about 2 minutes. Stir in the coffee, vinegar, Worcestershire sauce, molasses and mustard. Simmer over medium-low heat until the liquid is reduced and the sauce has thickened, about 25 minutes.
You may transfer to a blender and process until smooth or leave it natural. Will keep, tightly covered, in refrigerator for up to1 month.
Grill the steaks over medium heat until desired doneness. Arrange on serving plates and serve with bbq sauce either on top or on the side.