The picture that I've posted for this recipe is a page from a cookbook that my wife and I made and gave out to our guests at our wedding. This is similar to the Indian dish saag paneer, but I use tofu instead of paneer cheese and it's also not authentic really in any way. It is, however, a very spicy, belly-warming dish with a nice soft mouthfeel, to which tofu is an important contributor. You'll see I've modified it slightly from that original version -- more butter and fresh ginger. —clintonhillbilly
In a skillet, heat 1-2 tbsp butter and sautee tofu until it is nicely browned. You will need a thin, flat spatula to flip your tofu pieces without breaking them, and don't hesitate to add more butter if you think the tofu cubes are starting to stick. Once your tofu is light brown on at least two sides (it's hard to get all four, but if you can go for it!), sprinkle on your garam masala. You want each piece to get a dose of garam masala, but with tofu you can't just stir everything around because your cubes will break. If you use extra-firm tofu that is less likely to happen, but I prefer the mouthfeel of firm. Once you've sprinkled your garam masala on all the tofu, keep on sauteeing for another minute, turning the pieces over so the spices get stuck on the tofu via sauteeing in butter. Set aside.
In a large saucepan, sautee shallots, jalapno, garlic and ginger in the remaining butter. When they are soft, add spinach a handful at a time and sautee until cooked down. When the spinach is all cooked down and most (but not all) of its juices have evaporated, place the mixture in a blender. Add salt, almonds, and sour cream yogurt, and puree until smooth. I recommend using blanched, sliced or slivered almonds because they are easier to puree than whole raw almonds.
Return mixture to pan and add tofu, heat tofu through in spinach puree, and serve over basmati rice.