Begin by pressing and draining the tofu. Remove the tofu from the packaging and place it between two pieces of paper towel or wrap it in a tea towel and place it on a cutting board. Set something heavy on top, like a cast-iron skillet, and allow it to sit for at least 10 minutes to remove excess moisture. Once pressed, unwrap the tofu from the towel or paper towel, place it on a cutting board, and cut it into even bite-size cubes.
In a large pot on medium-high heat, warm 1 tablespoon of coconut oil. In batches, add tofu cubes and cook for 2-3 minutes per side until crispy and golden. Once cooked, remove the tofu from the pan and set it aside on a plate.
In the same pan on medium heat, warm the other tablespoon of coconut oil, then add the onion and carrot and cook for 3-4 minutes until fragrant.
Add the minced garlic and ginger and cook for an additional minute, then add the curry powder, ground cumin, ground turmeric, and salt, stirring to coat the vegetables, and cook for another 30 seconds until fragrant.
Add the red lentils, and stir to coat with the spiced vegetable mixture. Pour in the diced tomatoes, coconut milk, and broth, and stir to combine. Bring to a boil, then reduce to a simmer, and allow to cook for about 15 minutes.
Return the tofu to the pan and add chopped spinach. Stir to combine, and simmer for a final 3-5 minutes until the spinach has wilted and the lentils are tender. Taste and adjust seasonings with salt and pepper as needed.
The curry can be served immediately with rice and chopped cilantro, or cool and stored in an airtight container in the fridge for up to 5 days or in the freezer for up to 3 months.
