Place the halved tomatoes directly on a gas flame or under the broiler, turning occasionally, until they are blackened and bubbling with charred edges, about 8-10 minutes. Remove from heat and set aside.
While the tomatoes cool slightly, toast cumin and coriander seeds in a dry pan over medium heat until fragrant, about 1 minute. Grind them using a mortar and pestle or spice grinder and set aside.
Heat oil in a large heavy-bottomed pan over medium heat. Add the ground spices and stir for about 30 seconds until fragrant, filling your kitchen with warm, earthy aromas.
Add the minced garlic and grated ginger to the pan, stirring constantly until fragrant, about 1 minute. Be careful not to burn the aromatics.
Break apart the charred tomatoes with your spatula and add them to the pan. Let simmer over medium-low heat for 10-12 minutes, stirring occasionally, until the sauce thickens and develops a smoky aroma.
Stir in turmeric and chili powder, seasoning to taste, and cook for another 2 minutes to bloom the spices.
Add the shrimp to the sauce, stirring to coat evenly. Cook for 3-4 minutes until the shrimp turn pink and opaque, with a slight jiggle in the center.
Squeeze fresh lemon juice over the dish and stir in chopped cilantro, if using. Let cook for another minute to combine flavors.
Turn off the heat and let the dish rest for a minute. Serve hot, garnished with extra cilantro and lemon wedges, alongside rice or naan.