Turn the Instant Pot to the sauté setting and heat the vegetable oil. Add the cinnamon stick, cardamom pods, and cloves, and sauté for 30 seconds until fragrant.
Add the sliced onions and sauté for 5-7 minutes until golden brown. Stir frequently to prevent burning.
Stir in the minced garlic and grated ginger, cooking for 1-2 minutes.
Add the chopped tomatoes and cook for 4-5 minutes, stirring occasionally, until softened.
Mix in the ground turmeric, ground coriander, ground cumin, Kashmiri chilli powder, garam masala, paprika, and salt. Cook for 1 minute to release the spices' aroma.
Add the lamb pieces and stir well to coat them in the spice mixture. Cook for 2-3 minutes.
Stir in the yoghurt gradually to avoid curdling. Mix well to create a smooth base.
Pour in the water, ensuring the lamb is just covered. Secure the Instant Pot lid and set the valve to sealing.
Cook on high pressure for 25 minutes, then allow the pressure to release naturally for 10 minutes before manually releasing any remaining pressure.
Open the lid, stir, and adjust salt or spices as needed. If the curry is too thin, use the sauté setting to simmer until it thickens to your liking.
Garnish with fresh coriander and serve hot with basmati rice or naan.