Heat the oil in a large soup pot. Add the onion and garlic and sauté over medium heat until the onion is golden.
Add remaining ingredients except salt along with ½ cup water. Simmer gently, covered, for 30 minutes, stirring occasionally. Season gently with salt and adjust the other seasonings.
If time allows, let stand for an hour or so off the heat, then heat through as needed before serving. The chili should be very dense, but if you’d like it a bit more on the soupy side, add another ½ to 1 cup water and continue to heat through. Ladle into bowls and pass around the garnishes.