Prepare all ingredients as instructed above.
In a bowl, mix yogurt, lemon juice, ginger paste, garlic paste, garam masala, turmeric, chili powder, and salt. Add the chicken pieces, coat well, cover, and marinate for at least 30 minutes.
Cook the rice according to package instructions. Once tender, fluff with a fork and season with salt and black pepper. Cover and keep warm.
Bring a pot of salted water to a boil. Add spinach and blanch for 2–3 minutes until wilted. Transfer immediately to ice-cold water.
In a blender, combine the blanched spinach with tomato, garlic, ginger, and green chili. Purée until smooth and set aside.
Heat oil in a pan over medium heat. Add chopped onion and sauté until it begins to change color. Stir in the spinach purée and water.
Cover and cook for 10 minutes, stirring occasionally. Add garam masala, turmeric, chili powder, and salt. Cook for 1 minute.
Stir in the heavy cream. Add paneer cubes and simmer for 3–4 minutes. Turn off the heat and add lemon juice. Set aside.
In a separate pan, melt butter and add chopped onion. Cook until translucent. Add minced garlic, grated ginger, cumin, and coriander. Cook for 1 minute.
Add crushed tomatoes and cook until the oil separates from the mixture.
Add the marinated chicken along with the marinade. Cook until the chicken is no longer pink.
Stir in heavy cream and fenugreek leaves. Simmer for 5–7 minutes until the chicken is cooked through and the sauce thickens. Taste and adjust seasoning if needed.
Warm the naan bread in a nonstick pan over medium heat until soft and lightly browned on both sides.
Serve the butter chicken over rice with naan on the side. Plate the palak paneer alongside, and enjoy cold coconut water with the meal.