Bring a large pot of water to a boil, toss in the spinach and blanch for 1 minute until very tender. Dump the spinach into a colander and press firmly with the back of a spoon to extract as much water as possible, set aside.
Heat the ghee in a deep skillet over medium-high flame. Add the cubed paneer and fry for a couple of minutes until light brown on all sides, gently turning to avoid breaking up the cubes. Remove the cheese from the skillet and set aside.
Return the skillet to the heat and sauté the onions, garlic, and ginger; cook and stir for about 5 minutes until soft. Sprinkle the mixture with the curry powder; continue to stir to marry the flavors, about 1 minute. Fold in the chopped spinach and give everything a good toss. Shut off the heat and stir the buttermilk and yogurt into the spinach to incorporate. The mixture should be creamy and somewhat thick. Gently fold in the fried paneer cubes, season with salt, to taste, and serve with steamed basmati rice and/or flat bread.
Put the butter in a heavy saucepan over moderate heat, swirl the pot around to ensure that it melts slowly and does not sizzle or brown. Increase the heat and bring the butter to a boil. When the surface is covered with foam, stir gently and reduce the heat to the lowest possible setting. Gently simmer, uncovered, and undisturbed for 45 minutes, until the milk solids in the bottom of the pan have turned golden brown and the butter on top is transparent. Strain the ghee through a sieve lined with several layers of cheesecloth. The ghee should be perfectly clear and smell nutty; pour into a glass jar and seal tightly.
Toast the whole spices (coriander, cumin, fennel, cloves, mustard, cardamom and peppercorns) and the chiles in a small dry skillet over medium-low heat, shaking the pan often to prevent them from burning. Toast for a couple of minutes until the spices smell fragrant. In a clean coffee grinder, grind the toasted spices together to a fine powder. Add the turmeric and give it another quick buzz to combine. Use the spice blend immediately, or store in a sealed jar for as long as 1 month.