Place cauliflower in the bowl of a food processor. Pulse until cauliflower is very finely chopped and resembles quinoa. Heat a large cast iron skillet over high heat. Add 2 tablespoons olive oil, swirl to coat, and add cauliflower. Season with salt and pepper and cook, stirring only occasionally, until golden brown, about 5-6 minutes. Scrape into two serving bowls and top with lime zest. Return skillet to heat. Add 2 tablespoons olive oil. Add red pepper, onions, and jalapeno or serrano. Season with salt and pepper and cook until softened on medium-high heat, about 4 minutes. Add cumin seeds, toss to coat, and continue to cook until seeds are just toasted, about 30 seconds.
Divide mixture between serving bowls. In a small bowl, combine beans, lime juice, and remaining 1 tablespoon olive oil. Season with salt and pepper and divide between serving bowls. Add avocado, herbs, yogurt or sour cream, and salsa to serving bowls, dividing evenly. Serve.