6 slices bacon
2 pounds ground beef chuck
1 large onion, chopped
1 large green bell pepper, chopped
4 cloves garlic, finely chopped
1/4 cup chili powder
1 tablespoon ground cumin
2 teaspoons paprika
2 teaspoons dried oregano
2 tablespoons tomato paste
1 12-ounce bottle amber beer
2 tablespoons unsweetened cocoa powder
1 28-ounce can whole plum tomatoes, crushed by hand
1 1/2 cups low-sodium beef broth, plus more if needed
2 15-ounce cans black beans, drained and rinsed
1 tablespoon hot sauce
Shredded cheddar cheese, sliced scallions and/or sour cream, for topping (optional)
Cook the bacon in a large saucepan or Dutch oven over medium heat until crisp, 6 to 8 minutes per side. Drain on a paper towel-lined plate and let cool, then crumble and set aside. Pour off all but 1 tablespoon of the bacon drippings from the saucepan (reserve the drippings). Increase the heat to medium high, add the beef and cook, breaking up the meat with a wooden spoon, until browned, about 8 minutes. Transfer to a plate using a slotted spoon; wipe out the pan.
Heat 1 tablespoon of the reserved bacon drippings in the saucepan over medium-high heat. Add the onion and bell pepper and cook, stirring, until soft, about 5 minutes. Add the garlic and 1 teaspoon salt and cook 2 minutes. Add the chili powder, cumin, paprika, oregano and tomato paste and cook, stirring, until the tomato paste is brick red, about 6 minutes (add a splash of water if the mixture begins to stick). Add the beer and simmer until almost completely reduced, about 3 minutes.
Stir in the beef and any juices from the plate; add the cocoa powder, tomatoes, beef broth and beans and bring to a simmer over low heat. Cook, stirring occasionally, until the chili thickens slightly, about 1 hour, 30 minutes.
Stir the hot sauce into the chili and season with salt. Add some beef broth if the chili is too thick. Ladle into bowls and top with the crumbled bacon, cheese, scallions and/or sour cream.