Preheat oven to 300°F. In the meantime, heat the ghee in a large dutch oven over medium high heat.
Dry the lamb necks well with paper towels and sprinkle with 1 teaspoon of Diamond Crystal brand kosher salt (remember: not all kosher salts are the same, so if you’re using a different brand, salt accordingly!).
Sear the lamb in the shimmering fat in batches until browned on all sides, Make sure the lamb is in a single layer and not overcrowded.
Remove the browned lamb to a platter and decrease the heat to medium. Add the onions to the empty pan and sauté until translucent and soft (about 10 minutes).
When the onions are soft, add the garlic, ginger, cumin, coriander, and turmeric and stir until fragrant.
Add the tomatoes and coconut milk and cook until the sauce has thickened. Blend the sauce with a stick blender until smooth.
Nestle the browned lamb pieces in the sauce, and add enough boiling water to reach at least halfway up the meat (about 2 cups). Stir in 2 teaspoons of kosher salt and bring the contents to a boil.
Put the lid on the stew and place the pot in the oven for 2½ hours or until the meat is tender.
Transfer the pot from the oven to the stovetop. Stir in the defrosted spinach and garam masala. Cook over medium heat until the spinach is tender.
Adjust for seasoning with salt and pepper, and add the lemon juice.