Wash, peel and grate carrots using the thick side of a hand grater or food processor.
Add 1 tablespoon ghee to a pan on medium heat. Add chopped nuts and roast until they become lightly golden. If adding raisins, add them now. Roast for 15 seconds, take out and set aside.
Add grated carrots to a large pan and turn heat to medium-high. Saute carrots for 5 minutes so that some of the moisture is removed.
Now add milk to the same pan and let the milk (with the carrots) come to a boil. Lower heat to medium flame, and cook until all the liquid is evaporated. Stir frequently so that halwa does not scorch the bottom of the pan. This will take about 35-45 minutes.
Now add sugar to the halwa. The sugar will release water and make the halwa a little liquidy. Cook until halwa becomes dry again.
Now add cardamom powder, and remaining ghee and mix will the carrot halwa. Roast for a minute for the ghee to blend into the halwa.