Brown lamb. Discard all but 2 tablespoons fat from the pan.
Add onions and garlic to pan; stir often over medium heat until onions begin to get limp, 3 to 5 minutes. Add paprika, cumin, turmeric, cinnamon, ginger, cayenne, and cardamom; stir until very fragrant, about 30 seconds. Add broth, tomatoes (including juices), and tomato paste. Bring to a boil over high heat. Reduce heat, cover, and simmer, stirring occasionally, until lamb is tender when pierced, about 1 hour. Skim off and discard any fat. Add salt and pepper to taste.
On dinner plates or a large rimmed platter, mound couscous and form a well in the center. With a slotted spoon, transfer lamb and vegetables to well. Measure pan juices; if less than 3 cups, add water to make that amount, return to pan, and bring to a boil over high heat. Add salt to taste. Pour juices into a bowl and pass to add to taste. Scatter olives and cilantro over lamb; garnish as desired (see notes).
Place meat in a heavy-bottomed 5- to 6-quart pan. Add 1/2 cup water; cover and bring to a boil over high heat. Reduce heat and simmer briskly over medium heat until meat is gray on the outside and has rendered juices and fat, 15 to 20 minutes.
Uncover pan, increase heat to high, and stir often until most of the liquid has evaporated, 15 to 20 minutes. Reduce heat to medium-high and stir often until meat juices have caramelized and darkened and meat has browned in the rendered fat, about 5 minutes longer. If drippings and the brown film on pan begin to scorch, reduce heat to medium.
Nutritional analysis per serving of tagine.