In a large bowl, combine the chicken pieces, sliced onion, ginger, garlic, paprika, ground coriander, cumin, salt, and pepper. Toss well to coat the chicken evenly.
Heat the oil in a large skillet or Dutch oven over medium-high heat. Add the chicken and onion mixture. Cook, stirring occasionally, for 5-7 minutes, until the chicken is lightly browned on all sides.
Stir in the chopped chili, apricot jam, sliced carrots, and chicken stock. Bring the mixture to a boil.
Reduce the heat to low, cover the pan, and let it simmer for 30 minutes, or until the chicken is tender and cooked through. The internal temperature of the chicken should reach 165°F (74°C) on a meat thermometer.
In a small bowl, whisk the cornstarch with 2 tablespoons of cold water to create a smooth slurry.
Increase the heat to medium, pour the slurry into the skillet, and stir constantly. Cook for 1-2 minutes until the sauce has thickened.
Remove from the heat. Taste and adjust seasoning with more salt if needed. Stir in the fresh cilantro before serving.