Put the rice in a heatproof bowl, cover with boiling water and let sit for 10 minutes, then drain it very thoroughly.
Heat the oil in a pan. Add the rice and fry over a low heat, stirring almost constantly for about 5 minutes, or until just beginning to color.
Add the chopped onion, chili, garlic, tomatoes and carrots to the pan, and continue to cook for a minute or so before adding the stock and bringing to a boil.
Stir the rice well, cover the pan and simmer over a low heat for 20 minutes without removing the lid.
Stir in the peas and seasoning. Continue to cook, covered, for about 5 minutes, or until all the liquid has been absorbed, and the rice is tender.
Let the covered pan sit for 5-10 minutes, and then fork up the rice. Sprinkle generously with chopped fresh cilantro before serving.