To Marinate: Place chicken in a nonporous glass dish or bowl with lemon juice, 1 tablespoon chili powder and salt. Toss to coat; cover dish and refrigerate to marinate for 1 hour.
Drain yogurt in a cloth for 15 to 20 minutes. Place in a medium bowl; mix in salt, garlic paste, garam masala, butter, chili powder, ginger paste, lemon juice and oil. Pour yogurt mixture over chicken, replace cover and refrigerate to marinate for another 3 to 4 hours.
Preheat oven to 200 degrees C.
Place chicken on skewers. Place skewers in a 20x30cm baking dish and bake in preheated oven for 20 minutes, or until almost cooked through.
To Make Sauce: Melt butter in a medium saucepan over medium heat. Stir in garam masala. When masala begins to crackle, mix in ginger paste, chopped garlic and green chilli peppers. Saute until tender, then stir in tomato puree, chili powder, salt and water. Bring to a boil; reduce heat to low and simmer, stirring in honey and fenugreek.
Place chicken in sauce mixture. Continue cooking for another 5 minutes, or until chicken is no longer pink inside. Stir in fresh cream.