Melt butter over medium heat in a large frying pan. Brown the lamb pieces in batches until golden brown, about 5 minutes per batch. Use a slotted spoon to transfer the meat into the slow cooker.
Add onion slices to the pan; cook until softened, about 5 minutes. Stir in garlic, ginger, and fresh chilli. Transfer to slow cooker.
Use the same pan to heat the cardamon pods and crushed coriander seeds. Stir in ground coriander, cloves, turmeric and cumin. Stir in the yoghurt. Season with salt and freshly ground black pepper. Transfer to slow cooker and mix with lamb and onions.
Cover and cook on Low for 6 to 8 hours, or until lamb is tender.
Stir in cream and flaked almonds. Serve with basmati rice and garnish with fresh coriander.