To make the rice: Put the rice and water in the pot and set it on the stove. Turn the heat to high and bring to a boil. (You'll know the water is boiling when you see bubbles breaking all over the surface.)
Turn the heat down to low, cover the pot, and steam for 30 minutes. Set aside, covered, for 10 minutes.
While the rice is cooking, make the beans: Put the skillet on the stove and turn the heat to medium-low. When the skillet is hot, add the oil.
Add the garlic, onion, bell pepper, and 2 tablespoons water. Cook until the mixture is golden, softened, and almost gooey, about 10 minutes. Add more water if it is getting too dry.
Add the tomato, spices, beans, salt, and remaining 1 ½ cups water and cook until the beans are very soft, 20-30 minutes.
Fluff the cooked rice with the fork and divide among the bowls. Top with equal amounts of the bean mixture.
Top with the avocado and sprinkle with cilantro (if you like).