Combine grated garlic and ginger with 1 tablespoon of olive oil to make a Ginger-Garlic Paste .
In a large bowl, mix together yogurt, 3 tablespoons of Ginger-Garlic Paste, 1 teaspoon kosher salt, and 1/2 pepper. Cut any remaining fat from the chicken and toss to coat. Marinate about an hour, or in the refrigerator up to overnight.
Place a large skillet over medium heat and add 2 teaspoons of olive oil and butter. When the butter has melted, add the remaining Ginger-Garlic Paste and serrano peppers. Saute until lightly browned around the edges. Add the tomato paste and cook until the tomato has darkened in color, about 3 minutes. Add the garam masala and the paprika and saute for about 1 minute to draw out their flavors.
Add the tomatoes and remaining salt and stir into the mixture in the skillet. Cook for about 2 minutes, then add 1 cup of water. Bring to a boil, turn down to a simmer, and cook until thickened, about 20 minutes.
Heat your gas grill or grill pan to medium-high heat. Lightly brush the grill with oil. Place the chicken on the grill, shaking off some of the excess marinade. Cook until it's charred, about 2 minutes on each side. (Don't worry that the chicken will still be a little uncooked, it finishes cooking in the sauce).
Use an immersion blender and process sauce until smooth. Bring back up to a boil. Add the chicken and fenugreek leaves (use a grinder and pulse for a few seconds before adding). Take the heat down to a simmer and cook for about 10 minutes. Add half-and-half and stir through.
Garnish with minced fresh cilantro, and serve over basmati rice with naan bread.