Preheat the broiler to high.
Grease a large rimmed baking sheet with olive oil.
In a large bowl, combine the cauliflower florets, ½ cup coconut milk, 2 cloves of minced garlic, 1 tablespoon grated ginger, and a bit of salt.
Stir to combine and let marinate for 10 minutes to 30 minutes.
Spread the florets in an even layer on the prepared baking sheet and broil for 3-4 minutes, until the edges of the florets just start to char.
In the meantime, place a large cast-iron skillet over medium heat and add the olive oil. Add the onion and cook for 4-5 minutes.
Add the remaining garlic and ginger, and cook stirring for another 4-5 minutes.
Stir in the garam masala, curry powder, turmeric, cayenne, lime zest, and lime juice, and cook for about 1 minute.
Next, add the tomato paste and the remaining 2 cups of coconut milk. Stir to combine, and bring the sauce to a boil, cook for 5-7 minutes, until it starts to thicken. Stir in coconut oil.
If the sauce is too thick, add more coconut milk a little at a time.
Add the cauliflower florets to the pan, including the juices from the baking sheet. Toss gently to combine and cook, stirring until the sauce thickens about 5 minutes. Taste and adjust for salt and pepper.
Remove from the heat and sprinkle with cilantro.
Serve over rice with fresh warm garlic naan on the side.
