In a large pot or Dutch oven, heat olive oil over medium-high heat. Add the short ribs and brown on all sides, about 5-7 minutes. Remove and set aside.
In the same pot, add the chorizo and cook until browned, breaking it up with a spoon, about 5 minutes. Remove and set aside with the short ribs.
Add the diced onion, bell pepper, and garlic to the pot. Sauté until the vegetables are softened, about 5 minutes.
Stir in the chili powder, cumin, smoked paprika, oregano, salt, black pepper, and cayenne pepper (if using). Cook for 1 minute until fragrant.
Return the short ribs and chorizo to the pot. Add the diced tomatoes and beef broth, stirring to combine.
Bring the chili to a boil, then reduce the heat to low. Cover and simmer for 2 to 3 hours, or until the short ribs are tender and the flavors meld together.
Remove the short ribs, shred the meat, and discard the bones. Return the shredded meat to the pot along with the kidney beans and black beans. Simmer for an additional 15-20 minutes.
Taste and adjust seasoning if necessary. Serve hot, garnished with fresh cilantro and topped with sour cream and shredded cheese if desired.