First, prepare the sugar syrup.
Combine the sugar, 3 cups (720 ml) of water, and crushed cardamom seeds in a deep-sided pan.
Bring to a boil over medium heat, then reduce the heat and simmer for 10 minutes, stirring occasionally, until it forms a light syrup (it should not be a thick one-string consistency).
Remove from the heat, stir in the rose water, and set aside to cool completely.
To make the jamuns, whisk together the milk powder, self-rising flour, and semolina in a large bowl. Rub in the ghee or butter with your fingertips until the mixture resembles fine breadcrumbs.
Gradually add the warm milk, a little at a time, mixing gently to form a soft, pliable dough. Be careful not to add too much milk or over-knead the dough; just bring it together until it's smooth.
Let it rest for 5 minutes.
Pour the sunflower oil into a deep pan or kadai and heat it over low-medium heat until it reaches 275°F / 135°C. Use a candy thermometer for accuracy.
While the oil heats, line a large plate with paper towels.
Lightly grease your palms with a little ghee or oil. Pinch off small portions of the dough and roll them between your palms to form smooth, crack-free balls about the size of a marble (around ½ ounce each). They will double in size when fried.
Working in small batches, carefully slide 4-6 jamuns into the hot oil.
Fry for 5-7 minutes, stirring them gently to ensure they cook and brown evenly on all sides. They should be a deep golden brown, the color of almond skin.
Once cooked, use a slotted spoon to remove the jamuns from the oil and place them on the paper towel-lined plate to drain any excess oil.
Let them cool for 2-3 minutes.
Transfer the warm jamuns into the completely cooled sugar syrup.
Let them soak for at least 4 hours, or preferably overnight in the refrigerator, to absorb the syrup fully.
To serve, you can warm them gently in a saucepan with their syrup.
Serve 2-3 jamuns per person with a drizzle of syrup and a generous sprinkle of chopped pistachios.