Heat the olive oil in a medium pot over medium-high heat. Add the onion and red pepper, and season with salt and pepper. Cook, stirring occasionally, until golden and tender, about 5 minutes. Add the jalapeno and garlic, and cook, stirring, until fragrant, about 1 minute. Stir in the measured spices, and cook until they start to sizzle.
Pour in the broth and use a wooden spoon to scrape up any bits on the bottom of the pot. Stir in the beans, and season the soup with salt and pepper. Bring the soup to a simmer, then cook for 5 minutes, adjusting the heat as needed to maintain a simmer.
Whisk in the sour cream until smooth (it’s okay if it still looks a touch grainy at first), then add the baby spinach. Season with salt and pepper, and cook, stirring, until the spinach is wilted. Remove the pot from the heat and add the lime juice and hot sauce. Taste and season with more salt and pepper as needed—you’ll likely need more salt than you think you need, especially if you used unsalted beans, so be generous.