Make the bhaji (vegetables): In a small pot, combine the cauliflower, peas, and 3 cups water and bring to a boil over high heat. Reduce the heat to medium-high, cover, and cook until the cauliflower is soft and fork-tender, 7 to 10 minutes. Thoroughly drain, then return the vegetables to the pot and use a potato masher or fork to lightly mash them (they should still be chunky, just more incorporated). Set aside.
Peel the potatoes, put them in a bowl, and use the potato masher or fork to mash them (don't worry if there are still a few small lumps). Set aside.
In a medium pan over medium-high heat, warm the oil. Once the oil begins to shimmer, swirl in the turmeric. Add the coriander, red chile powder, and tomatoes and cook until the tomatoes have started to soften, 3 to 4 minutes. Reduce the heat to low, add 2 tablespoons water and the green chile, and simmer for about 4 minutes, using a spoon or spatula to mash the tomatoes into a chunky sauce as they cook.
Add the mashed potatoes, the cauliflower-pea mixture, the salt, and 1/4 cup water. Increase the heat to medium-low and cook until the mixture starts to resemble a thick stew, 5 to 7 minutes. Add more water, 1 tablespoon at a time, if it's looking too dry. Taste and adjust the salt if needed. Stir in the cilantro, turn off the heat, and transfer the bhaji to a bowl. Wipe out the pan.
Make the pav: Split each bun in half and butter each side. Warm the pan you used for the bhaji over high heat and toast the buns in the pan, buttered-side down, until golden brown, about 1 minute.
Assemble the pav bhaji: Evenly portion the bhaji on each bun half (like an open-faced sandwich) and top each with a tablespoon of diced onion plus a generous squeeze of lime juice. Serve with remaining onion and lime wedges alongside.