Put the potatoes in a large pot of salted water and bring to a boil. Boil over moderate heat until tender when pierced with a knife, about 25 minutes. Drain and let cool, then halve the potatoes.
Meanwhile, in a large, deep skillet, bring the water to a boil. Working in batches, add the spinach by handfuls and cook over moderately high heat until wilted. Using tongs, transfer the spinach to a colander and repeat with the remaining spinach. Squeeze the spinach dry, then transfer it to a food processor and puree. Wipe out the skillet.
Heat the oil in the same skillet. Add the onion and cook over moderately high heat, stirring occasionally, until beginning to brown, about 8 minutes. Add the garlic, ginger and jalapeños and cook, stirring, until fragrant, about 3 minutes. Add the chopped tomatoes and cilantro and cook over moderate heat until most of the liquid has evaporated, about 10 minutes. Add the coriander, cumin, paprika and garam masala to the skillet and cook, stirring, for about 2 minutes.
Slowly stir in the yogurt. Add the potatoes and a large pinch of salt, cover and cook over moderately low heat for 5 minutes, stirring occasionally. Add the pureed spinach and stir well. Cover and simmer for 10 minutes to blend the flavors. Season with salt. Transfer the potatoes and spinach to a platter or bowl, garnish with the cilantro leaves and serve.