Melt the coconut oil in a large pan over medium low heat until pan is nicely preheated.
Add the chicken to the in pan a single layer, season generously with salt and pepper. Let it sear for 2 minutes on one side, then turn and let it sear on the other side for 2 minutes until nicely browned. It will not be cooked through, that is fine.
Add the onions and saute a few minutes until translucent. Add the bell pepper (if using), garlic, and spices and saute for a minute or two to bring out the flavours.
Add the crushed tomatoes and chicken bouillon and scrape up the browned bits from the bottom of the pan with a wooden spoon.
Add the coconut milk and 1/2 tsp of salt and stir to combine. Simmer on low for 20 minutes, cover if sauce is reducing too much.
Stir in the ketchup. Taste sauce and adust seasoning as needed. Add more ketchup if you would like it a touch sweeter, more Garam Masala if you would like more depth of flavour, more chili flakes for heat, more coconut milk to make it creamier, or more salt and pepper to taste.
Remove from heat and stir in the Ghee/Butter until sauce is silky smooth.
Garnish with fresh herbs if desired. Serve with rice and/or roasted cauliflower and naan bread.