Marinate the chicken: In a large bowl, toss the chicken with the turmeric, Kashmiri red chili powder, salt, and vinegar until every piece is evenly coated. Cover and set aside for at least 20 minutes at room temperature.
Roast and grind the coconut masala: Heat a dry kadai or heavy skillet over medium heat. Add the grated coconut and roast, stirring constantly, for 5-7 minutes until it turns an even golden brown and smells nutty. Add the coriander seeds, black peppercorns, fennel seeds, and dried red chilies and roast 1-2 minutes more until fragrant. Let cool slightly, then grind with the turmeric and 2-3 tablespoons of water into a smooth, thick paste.
Temper and build the base: Heat the 2 tablespoons of coconut oil in the same kadai over medium heat. When shimmering, add the mustard seeds; when they splutter, add the 10-12 curry leaves. Add the sliced onions and cook for 8-10 minutes, stirring often, until deep golden and caramelized at the edges. Stir in the ginger garlic paste and cook 1 minute until fragrant. Add the chopped tomatoes and cook 5-6 minutes until they break down into a jammy base.
Add the chicken and coconut masala: Stir the ground roasted coconut masala into the onion-tomato base and cook 2-3 minutes until the oil glistens at the edges. Add the marinated chicken pieces and toss to coat in the masala. Pour in the hot water, add the garam masala and salt, and bring to a boil. Reduce the heat, cover, and simmer for 20-25 minutes, until the chicken is cooked through and tender and the gravy has thickened.
Finish with coconut milk: Lower the heat to a gentle simmer. Stir in the thick coconut milk and cook for 4-5 minutes — do NOT let it boil, or the coconut milk can split and turn grainy. Taste and adjust salt. The gravy should be rich, reddish-brown, and coat the chicken generously.
Final tempering and serve: In a small pan, heat the remaining tablespoon of coconut oil until shimmering. Add the curry leaves and dried red chilies and fry for 20-30 seconds until crisp and aromatic. Pour this sizzling tempering over the curry, garnish with fresh cilantro, and serve hot.