Heat a wide pan on medium heat. Dry roast the besan in it for 2-3 minutes, till it has changed color to dark brown and just begins to smell fragrant. Make a well in the besan and add the ghee. Continue to cook the besan in it for 5-7 minutes.
When the besan becomes dark brown, add sugar and most of the chopped cashews. Cook for another minute or so. Turn up the heat. Add water. Besan will start boiling right away. Stir vigorously or lumps can form. After the boil, reduce heat, keep stirring. When the water evaporates and besan achieves the consistency of a smooth, flexible paste, halwa is ready. Garnish with rest of the cashews and serve.