Heat 1 tablespoon of olive oil in a large skillet over medium-high heat. Season the beef cubes with salt and pepper. Sear the beef in batches until browned on all sides, then transfer to the slow cooker.
In the same skillet, add the remaining tablespoon of olive oil. Add the diced onion and red bell pepper. Sauté for 4-5 minutes until softened.
Add the minced garlic, chili powder, cumin, and smoked paprika to the skillet. Cook for 1 minute until fragrant, stirring constantly.
Pour in about 1/2 cup of the beef broth to deglaze the pan, scraping up any browned bits from the bottom. Pour this mixture over the beef in the slow cooker.
Add the crushed tomatoes, diced tomatoes, remaining beef broth, kidney beans, and black beans to the slow cooker. Stir to combine.
Cover and cook on Low for 7-8 hours or on High for 3-4 hours, until the beef is fork-tender.
Taste and adjust seasoning with salt and pepper if needed. Serve hot, topped with shredded cheddar cheese and fresh cilantro.