Cook the bacon in a large Dutch oven over medium heat until most of the fat is rendered. Add the onion and garlic and saute until soft. Stir in the chili powder. Add the dry rub, beans, water, beer, barbecue sauce, brown sugar, molasses, Worcestershire, soy sauce, hot sauce, and salt and pepper, to taste. Cover the pot with a lid and bring to a low simmer. Transfer the pot to the oven and bake until the beans are tender, about 2 1/2 to 3 hours. Serve in a bowl or straight from the pot.