Transfer the uncooked rice to a fine-mesh strainer and rinse under cold water until the water runs clear. Tap the sides of the strainer against the side of the sink a couple of times before setting aside to drain.
Add 2 tablespoons of oil to a medium saucepan set over medium-high heat. Add the rice and sauté, stirring often, until golden and lightly toasted (approximately 5 minutes). Remove the rice from the pan and set aside in a clean bowl.
Return the saucepan to medium heat. Add the remaining tablespoon of olive oil and diced onion. Cook the onion, stirring occasionally for 3-4 minutes, or until starting to soften. Season with salt, cumin, and chili powder, mix well to combine. Add the garlic and diced carrot. Continue to cook for 3-4 minutes, stirring often.
Return the toasted rice back to the pan. Add the salt, chopped tomato, tomato sauce, tomato bouillon cubes, peas, and water. Mix well to combine and bring to a boil. Once boiling, immediately cover and reduce heat to low. Continue to cook until the rice is tender and the liquid has been absorbed, approximately 18 minutes.
Remove from heat and gently fluff with a fork. Cover again and allow your rice to rest for approximately 10 minutes before seasoning with additional salt and black pepper, to taste.