Rinse the rice thoroughly with water. Soak the rice in ½ cup of water for about 30 minutes. This helps the rice cook faster and become creamier.
Drain water from the soaked rice. In a pressure cooker add water and soaked rice. Stir to combine. Pressure cook for 2 whistles over low heat till rice is nicely done.
Once rice is cooked, open the lid of the pressure cooker and turn on the heat. Add the full-fat coconut milk, cardamom powder, and sugar. Mix well.
Bring the mixture to a gentle simmer over low heat. Crucially, do not bring it to a rolling boil, as this can cause the fat in the coconut milk to separate.
Continue to simmer for another 15-20 minutes. Stir frequently, scraping the sides and bottom of the pan to prevent scorching and help the kheer thicken evenly. The rice should break down and the kheer should reduce and become thick.
Once cooked, allow the coconut kheer to cool completely at room temperature. After cooling, add chopped coconut and the malai (coconut fat). Mix nicely.
In a heavy-bottomed saucepan, heat the oil or vegan butter (if using) over low heat. Add the chopped nuts, a tablespoon of chopped coconut, and fry until they turn light golden and aromatic. Remove the nuts with a slotted spoon and add them to the kheer.
Serve rice coconut kheer warm or chilled.