Heat a heavy-based saucepan over a medium–high heat. Add a generous splash of oil and cook the chicken pieces until golden brown all over. This may need to be done in batches. Remove the chicken and set aside.
Return the pan to the heat. Add more oil, if necessary, and cook the onion for 3–4 minutes, stirring often, until soft. Add the garlic, cinnamon, ginger, cumin, cardamom and saffron. Cook for 1–2 minutes, then add the diced tomatoes. Lower the heat and cook for 5 minutes, stirring occasionally. Raise the heat, add the stock and chicken and bring to the boil. Season with salt and pepper. Reduce the heat and simmer for 30–40 minutes, or until the chicken is cooked.
Remove the chicken pieces and set them aside to keep warm. Raise the heat under the saucepan and reduce the cooking liquid until it’s the consistency of thick cream. Add the honey and continue to cook for 5–6 minutes, stirring often, until it’s reduced and like jam.
Check seasoning, add orange-blossom water and return the chicken to the pan to heat through.
Scatter the chicken with almonds and coriander. Serve with couscous.