Place the tofu block on a plate, top with another plate, and add a 3-2.2 kg weight. Press the tofu for 20-30 minutes, then drain and discard the accumulated liquid.
Preheat the oven to 375°F (190°C) and grease a baking sheet.
In a bowl, whisk together 1/2 cup yogurt, 2 tablespoons lemon juice, 2 teaspoons ground cumin, 1/2 teaspoon cayenne pepper, 1 teaspoon paprika, 1 teaspoon garam masala, and 1 tablespoon minced ginger root.
Cut the tofu into 1/2-inch cubes and gently stir into the yogurt mixture. Arrange the tofu cubes on the prepared baking sheet, ensuring they do not touch each other.
Bake the tofu in the preheated oven for 45 minutes to 1 hour, until the tofu has firmed and the sauce is no longer sticky. Gently turn the tofu every 15 minutes during baking.
In a large skillet, melt 2 tablespoons unsalted butter over medium heat. Cook 4 minced garlic cloves and 3 seeded minced serrano peppers in the hot butter until softened, about 3 minutes.
Stir in 4 teaspoons ground coriander, 2 teaspoons ground cumin, 2 teaspoons garam masala, and 1/2 teaspoon salt. Cook for another minute to release the fragrance of the spices.
Add 1 can of tomato sauce and the cut cauliflower florets, cover, and cook, stirring frequently, until the cauliflower is tender, about 15 minutes.
Once the cauliflower is tender, stir in 2 cups half cream, 1 cup frozen peas, 1/4 cup chopped cilantro, and the baked tofu cubes.
Bring to a simmer and cook for 5 minutes or until your desired thickness is attained.