Pat lamb dry with paper towels, then season on all sides with salt. Let sit at room temperature 1 hour, or chill, uncovered, up to 12 (longer is better; overnight works great).
Heat oil in a large Dutch oven or tagine over medium-high. Use a heat difuser if you are using a tagine. Working in batches, cook lamb, turning occasionally, until browned on all sides, 12–14 minutes total. Using a slotted spoon, transfer lamb to a plate.
Turn heat down to medium. Add yellow onion and 2 Tbsp. water to pot and cook, stirring occasionally and scraping browned bits from bottom of pot, until onion is slightly softened, 8–10 minutes. Add ginger, garlic, bay leaves, raisins, and ⅓ cup almonds. Cook, stirring occasionally, until garlic is softened, about 3 minutes.
Return lamb to pot and add tomato paste, cinnamon, cumin, red pepper flakes, turmeric, and cardamom. Cook, stirring occasionally, until mixture is fragrant and tomato paste has darkened and is beginning to stick to bottom of pot, about 3 minutes. Pour in 6 cups water and bring to a boil. Reduce heat to medium-low and bring to a bare simmer. Cover partially with Cover partially with lid (you want a little space for steam to escape), not necessary if you are using a tagine, and cook, stirring occasionally, until lamb is tender and liquid has thickened, 60–75 minutes. Add water, if needed to maintain a sauce. Remove from heat; taste and adjust seasoning with salt.
Meanwhile, toast remaining 2 Tbsp. almonds in a small dry skillet over medium heat, tossing often, until golden brown, 4–6 minutes. Transfer to a cutting board to cool, then coarsely chop.
Toss red onion and mint in a small bowl. Squeeze lemon over; season with salt and pepper. Toss again to coat.
Ladle stew into bowls. Top with chopped almonds and onion salad.
Serve with couscous, rice and/or flat bread. A dollop of yogurt round out the flavors of the spice, if you so desire.