Marinate the chicken: Combine the vinegar, coconut milk, ginger, and garlic in a large mixing bowl and whisk well to combine. Add the chicken, turn to coat, and cover with plastic wrap. Refrigerate for 8 to 12 hours or overnight. Remove the chicken from the refrigerator about 15 to 10 minutes before cooking.
Make the spice paste: Heat a cast-iron pan or heavy skillet over high heat until hot. Add the whole spices—the cumin, cardamom, cloves, and coriander—to the pan and swirl the spices around for 30 seconds, until they are fragrant. Transfer the warmed spices to a grinder, add the bay leaves, black pepper, and salt, and grind until powdery. Place the spice mixture into a small mixing bowl. Add the paprika, annatto, turmeric, cinnamon, lemon juice and zest, and the melted coconut oil and mix to combine into a paste.
Preheat oven to 385°F. Spray two broiling pans with nonstick vegetable oil spray. Place the broiling pans in the oven.
Remove the chicken from the marinade, pat dry with paper towels and place on a rimmed baking sheet and cover with plastic wrap. Discard the marinade and do not reuse in any manner. Allow to the chicken come to room temperature while the pans get very hot, about 5 to 7 minutes. The chill needs to be off the chicken so the paste won’t clump, but you don’t want it sit out too long, as it’s a safety concern. Remove the plastic wrap and rub the paste liberally all over the chicken. Let stand while the pans get hot.
Place the chicken on the broiling pans and cook for 25 to 30 minutes, until an instant-read thermometer inserted into the thickest part reads 165°F and the juices run clear when a paring knife is inserted into the thickest part (the roasting time will depend upon the size of the chicken thighs). Garnish with sliced red onion and lemon slices and serve hot with rice.