In a small bowl, combine the paprika, black pepper, cinnamon, cumin, ginger, and salt.
Place the flour in a shallow dish and mix in 1 tablespoon of the spice mixture.
Coat the chicken pieces evenly with the seasoned flour. Set the remaining spice mixture aside.
Heat the olive oil in a 4- to 6-quart Dutch oven over medium-high heat. Add the chicken and cook for about 7 minutes, turning as needed, until browned on both sides. Transfer the chicken to a plate.
Add the onions, carrots, garlic, and remaining spice mixture to the same pot. Cook for about 5 minutes, stirring occasionally, until the onions begin to soften and lightly brown.
Return the browned chicken to the pot. Add the potatoes, olives, preserved lemon, 2 tablespoons each of the cilantro and parsley, bay leaves, and chicken stock.
Bring the mixture to a boil, then reduce the heat to low.
Cover and simmer for about 1 hour, or until the chicken is thoroughly cooked and the potatoes and carrots are tender.
Remove the bay leaves. Taste and adjust the seasoning if needed.
Sprinkle with the remaining cilantro and parsley. Serve the chicken tagine hot with cooked couscous, if desired.