Soak cashews in boiling water for at least 15 minutes. Press tofu for at least 15 minutes too. Take frozen peas out of the freezer and thaw.
Add vegan butter and tofu triangles to a pan over medium heat. Flip the tofu once one side has browned and crisped up (about 4-5 minutes). Cook for around the same amount of time on the other side. While tofu cooks, prep other ingredients.
When tofu is done, add 1 tbsp avocado oil to the pan. Add ginger, garlic, onions, and green chili. Saute until onions are translucent.
Add tomatoes. Stir until its juices evaporate and the mixture stays together, so about ~ 6-8 minutes. Take the pan off of the heat and let it cool a little before blending.
Blend the tomato mixture with cashews and milk.
Add 1 tbsp avocado oil to the same pan over medium-low heat. Add all the ground spices and make sure they do not burn! After 2-3 minutes, add peas. Mix until peas are mostly cooked, so around 6-8 minutes.
Add the blended mixture along with 1 cup of water (adjust according to desired texture), salt, and kasoori methi. Bring to a simmer and cover for 10 minutes.
Add tofu triangles, let it simmer for 2-3 more minutes, and then take it off of the heat! Serve with rice, naan, or roti.