Heat olive oil in a large pot over medium heat. Add onion, bell pepper, and jalapeƱos. Cook until softened, about 5 minutes.
Add garlic, cumin, and chili powder. Cook for another minute until fragrant.
Add black beans, corn, vegetable broth, and diced tomatoes. Bring to a boil, then reduce heat and simmer for 20 minutes.
Use an immersion blender to partially blend the soup, leaving some whole beans and corn for texture. Alternatively, blend about 1/3 of the soup in a regular blender and return to the pot.
Stir in heavy cream and lime juice. Simmer for an additional 5 minutes.
Season with salt and pepper to taste.
Serve hot, garnished with cilantro and sliced avocado if desired.