Marinate the chicken with 1/4 cup sour cream, 1tsp kasuri methi, 1/2 tsp garam masala and salt for about 30 minutes. Boil roughly chopped onion with 1 cup of water in a sauce pan for about 10 to 12 minutes. Let it cool down and then blend it to fine paste.
Heat 1 tsp of oil and fry the chicken until slightly cooked or tender. Remove from the pan and add 2 tsp of oil, add whole garam masala ( cloves, peppercorn, cardamom, bay leaves, cinnamon stick) and green chili.
Saute for few seconds and add ginger and garlic paste. Cook for 1 minute and add onion paste. Saute this paste for 2 to 3 minutes and add remaining 1/4 cup of sour cream. Mix well and toss in the chicken and cook for 3 to 4 minutes.
Blend soaked cashew to smooth paste and add it to the gravy. Add more water if required. Cover and cook until the chicken is done. Stir in saffron milk, 1/2 tsp garam masala and garnish it with kasuri methi and coriander. Serve hot with rice or roti.