Over a medium-low heat, melt the ghee in a kadhai or a non-stick pot
Add the grated beetroot and stir continuously using a wooden spoon. Cook the beetroot for roughly 10-15 minutes until the water content seems to have evaporated and the beetroot starts to look a bit like a mash. It's okay if the beetroot is still a bit hard at this point.
Add ¼cup of the jaggery (or brown sugar). Start with less sweetness, and build it up as the halwa cooks. Mix the jaggery through until it just dissolves and combines with the beetroot.
Pour in all the milk and add the rose water too, and mix the ingredients together. This is whether the real work begins. Continue to mix the pot without stopping until the mixture reduced down. This can take anywhere between 30 to 45 minutes depending on the water content of the beetroots. The mixture is properly reduced when you complete a successful 'swipe test'. Drag your spoon across the bottom of the pan to create a line through the halwa. If the mixture returns and fills this gap quickly, the mixture needs to reduce further. If the mixture doesn't fill the space quickly and looks nice a pudding-like, the halwa consistency is perfect to continue.
Taste the sweetness of the halwa here. If it needs more sweetness add the remaining jaggery (or brown sugar). Let the jaggery or sugar melt and dissolve completely into the mixture and stir the whole time
Sprinkle over the ground cardamom and stir the pot one last time until the cardamom is completely mixed through. Turn the heat off the pot and set aside to cool slightly before serving.
To garnish, scoop some halwa into a dessert bowl and top with the chopped almonds and pistachios.