Set Instant Pot to sauté mode. Melt butter, then add diced onion. Cook until soft and golden.
Stir in garlic and ginger. Cook about 1 minute on medium heat until fragrant.
Add tomato paste, then stir in chicken broth and spices (garam masala, cumin, paprika, turmeric, salt, and black pepper).
Season chicken thighs with salt and pepper. Place chicken pieces into the sauce in a single layer.
Seal the lid and vent. Cook on manual pressure for 11 minutes. Let it naturally release for 10 minutes.
Remove chicken. Stir in heavy cream and keep on low heat or warm mode until sauce is creamy and smooth.
Cube chicken into bite-sized pieces and return to Instant Pot. Stir to coat in sauce.
Serve hot over basmati rice or cauliflower rice, with naan bread, fresh cilantro, and a squeeze of lemon juice.