Trim the lamb of any fat or sinew and cube the meat. Heat oil in a large pan and chopped onions. Saute for five minutes. Stir in yogurt and add chili powder, coriander, cumin, cardamom, cloves, turmeric, garlic and ginger. Add chopped tomatoes and salt. Let simmer for approximately five minutes. Add the lamb and stir until coated. Cover and cook (stirring occasionally) over low heat for 1-1/2 hour or until lamb is tender. Uncover and let simmer.
Meanwhile, toast the almonds until golden brown. Add the garam masala to the curried lamb and sprinkle the almonds over top.