Wash the chicken and dry with absorbent paper towels.
Place the garlic, salt, pepper, ginger, spicy paprika, and cumin in a food processor or mortar and pestle and grind to form a paste. Add the olive oil in a thin stream. Rub the chicken with the spice mixture and let rest in the refrigerator for 4 hours, or overnight.
Heat a small heavy-bottomed saucepan and toast the saffron for about a minute or until the fragrance is released. Let cool and grind in a mortar and pestle or spice grinder. Set aside.
Heat a heavy-bottomed medium Dutch oven over medium-high heat. Add the chicken with the oil that clings to them and brown until golden, about 3 minutes on each side. Add the saffron and grated onion, and cook, stirring often, for 3 minutes. Add the chicken stock and bring to a boil. Lower heat to maintain a simmer. Cook, covered, for 15 minutes.
While the chicken cooks, rinse the olives and pit them if desired (I don’t). Rinse the preserved lemons and quarter. Add to the chicken and continue cooking for 10 minutes or until the chicken is tender. Uncover and continue cooking for 10 minutes or until the sauce is slightly reduced. Transfer the chicken with the olives and lemons to a serving platter. Keep warm.
Bring the sauce to a boil over high heat and add the lemon juice. Cook until reduced, about 3 minutes. Pour over the chicken and serve.