Heat the oil in a large pot or Dutch oven over medium heat. Add the onion, bell peppers, garlic, and ¼ teaspoon each salt and black pepper and cook, stirring occasionally, until tender, 12 to 15 minutes.
Add the beef, increase heat to medium-high, and cook, breaking up the beef with a spoon, until no longer pink, 8 to 10 minutes. Add the tomato paste, chili powder, and cumin and cook, stirring, for 2 minutes.
Add the tomatoes (with their juices), beans, ½ cup water, 1 teaspoon salt, and ½ teaspoon black pepper and bring to a boil. Reduce heat and simmer, stirring occasionally, until slightly thickened, 25 to 30 minutes. Serve with the avocado, onion, and sour cream.