Rinse the chicken breast fillets, pat dry, and cut into bite-sized cubes.
Heat the oil in a large pan over medium-high heat. Fry the chicken for 5-7 minutes, stirring occasionally, until it is lightly golden on all sides and the internal temperature reaches 74°C (165°F). Remove from the pan and season with salt and pepper.
Peel the mango and cut the flesh from the stone, then dice. Peel and finely dice the garlic cloves. Clean, rinse, and halve the spring onions lengthwise, then cut into rings. Peel the ginger and finely dice or grate it. Slit the red chilli pepper lengthwise, remove the seeds, and cut into rings.
Add the butter to the remaining oil in the pan over medium heat. Add the mango, garlic, ginger, spring onions, and chilli, and sauté for 2 minutes. Remove from the pan.
Add the curry powder to the remaining fat and toast for 1 minute over medium heat.
Pour in the coconut milk and chicken broth, stirring to combine. Simmer uncovered over medium heat for 5-7 minutes until the sauce slightly thickens. Season with salt and pepper to taste.
While the sauce simmers, place the tomatoes in boiling water for 1 minute, then transfer to ice water. Peel off the skin, remove the core, and cut into cubes.
Return the cooked chicken, sautéed mango mixture, and tomato cubes to the sauce and heat for 2 minutes until warmed through.
Serve sprinkled with desiccated coconut if desired, with rice, chapati, or naan on the side.