Rinse the jasmine rice under cold water until the water runs clear. Place it in a medium pot with 2.25 cups water and 1/2 tsp salt. Bring to a boil, then reduce heat to low, cover, and simmer for 15 minutes until tender. Remove from heat and let it sit covered.
Heat the vegetable oil in a large skillet over medium heat. Add the sliced onion and cook for 3 minutes until it starts to soften.
Stir in the minced garlic and ginger, then add the red curry paste. Cook for 1 minute until fragrant.
Add the chicken pieces to the skillet. Cook for 5 minutes, stirring occasionally, until the chicken is no longer pink on the outside.
Pour in the coconut milk and fish sauce. Bring to a gentle simmer and cook for 8 minutes until the chicken is cooked through and the sauce has thickened slightly.
Add the snap peas and lime juice. Stir and cook for 2 more minutes until the snap peas are bright green but still crisp. Serve the curry over the jasmine rice and sprinkle with chopped cilantro.