Place rice in a sieve and run cool water through it to rinse it until the water runs clear. Soak the rice in cool water for 30 minutes. Drain.
Bring the water and the salt to a boil in a large pot. Add the rice and stir. Add the cloves, cardamom and cinnamon and simmer for 10 minutes. Taste the rice, and test if it is done to your taste; rice can take more or less time to cook depending on how old it is. If still too firm, cook a few minutes longer.
When the rice is cooked to your liking, drain the rice into a colander and rinse with cold water to stop it from cooking. Remove the cardamom and discard. Set the rice aside to drain.
In a pan large enough to hold the rice, heat the oil over medium-high heat. Add the remaining spices. Add onion and sauté until the onion begins to brown, about 5-7 minutes.
Add the garlic and sauté another 2-3 minutes. Add the rice and cashews mixing well, stirring until warm.