1. Combine the onion, tomatoes with their juices, garam masala, cumin, coriander, paprika, cinnamon, ginger, cayenne, and maple syrup in the Instant Pot and use an immersion blender to blend until smooth. (Alternatively, place the ingredients in a blender and blend until smooth, then pour the sauce into the pot.) Place the chicken on top of the sauce and season it with the salt.
2. Arrange a 2.5-inch trivet (I bought mine in this set) over the chicken and place a 7-inch oven-safe bowl on top. Add the rice and water to the bowl. Secure the lid and move the steam release valve to Sealing. Select Manual or Pressure Cook to cook on high pressure for 12 minutes. When the cooking cycle is complete, immediately move the steam release valve to Venting to quickly release the steam pressure. When the floating valve drops, remove the lid.
3. Use oven mitts to lift the trivet and the bowl of cooked rice out of the pot.
Fluff the rice with a fork. Use tongs to transfer the cooked chicken to a cutting board. Add the cauliflower and carrots to the sauce. Secure the lid and move the steam release valve to Sealing. Select Manual/Pressure Cook to cook on high pressure for 1 minute. When the cooking cycle is complete, immediately move the steam release valve to Venting to quickly release the steam pressure. When the floating valve drops, remove the lid.
4. Cut the chicken into bite-sized pieces and stir them into the sauce. Stir in the coconut milk, then taste and adjust the seasonings as needed. Serve warm over the rice. Store leftovers in an airtight container in the fridge for 3 or 4 days.