Make tomato broth: Heat olive oil in a medium saucepan over medium-high heat. Add onion, garlic, and carrots. Cook, stirring occasionally, until soft, about 5 minutes. Stir in the harissa, paprika, tomato paste, saffron, and tomatoes. Add 5 cups water, parsley, thyme, cinnamon stick, salt, and peppercorns. Bring to a boil; reduce heat and simmer for 1 hour. Strain and set aside.
Make couscous: Bring 2 1/4 cups water to a boil in a medium saucepan. Stir in couscous, olive oil, salt and raisins. Cover the pot with two layers of cheesecloth and top with the lid. Remove from heat and let stand for 5 minutes.
Use a fork to fluff the couscous and mound it in the center of a large shallow bowl. Arrange vegetables around and over couscous and pour tomato broth over. Any remaining broth can be served in a small pitcher alongside the couscous. Serve garnished with preserved lemon.