Heat olive oil and unsalted butter in a large pot over medium heat. Once the butter melts, add diced red bell pepper, jalapeño, and garlic. Sauté for 2 to 3 minutes.
Add ground beef to the pot along with chili powder, smoked paprika, cumin, coriander, oregano, salt, black pepper, onion powder, and cayenne powder. Break up the ground beef as it cooks and brown it for a few minutes.
Once the ground beef is cooked, add beef broth, brown sugar, fire-roasted diced tomatoes, tomato sauce, and Worcestershire sauce. Mix well, bring to a boil, then reduce heat, cover, and simmer for 35 to 45 minutes.
Remove the lid and add the beans. Mix and cover again, then cook for an additional 20 to 30 minutes.
Finish by adding cilantro and mixing everything together. Taste and adjust seasoning as needed.
Serve in bowls and optionally garnish with green onions, sour cream, cheddar cheese, bacon, or more cilantro. You can also squeeze some lime on top and enjoy with corn chips!