Rinse the jasmine rice under cold water until the water runs clear. In a medium saucepan, combine the rice with 4 cups of water. Bring to a boil, then reduce heat to low, cover, and simmer for 15 minutes or until the rice is tender and the water is absorbed. Remove from heat and let it sit covered for 5 minutes. Fluff with a fork before serving.
In a large skillet or saucepan, heat the vegetable oil over medium heat. Add the diced onion and sauté for about 3-4 minutes until translucent.
Stir in the minced garlic and grated ginger, cooking for an additional minute until fragrant.
Add the red curry paste to the skillet, stirring well to combine with the onion mixture. Cook for another 2 minutes.
Pour in the coconut milk, fish sauce, and lime juice. Stir to combine and bring the mixture to a gentle simmer.
Add the fish pieces, bell peppers, and snap peas to the skillet. Cook for about 5-7 minutes, or until the fish is cooked through and flakes easily with a fork. Season with salt and pepper to taste.
Serve the curry over a bed of jasmine rice, garnished with fresh cilantro and lime wedges on the side.