Combine all meatball ingredients in a large bowl. Using a small disher or tablespoon, scoop out uniformly sized balls of the mixture and place on baking pans. Roll between your palms to smooth and form round balls.
Heat a thin layer of refined coconut oil or ghee in a large skillet, preferably cast-iron, over medium heat. Working in batches, fry meatballs, taking care not to overcrowd, until browned. Meatballs will finish cooking in a later step, so you do not need to cook them through in this step. Transfer to a plate, and fry remaining meatballs.
Once meatballs are cooked, clean out skillet. Add 1/4 cup ghee to skillet and melt over medium-low heat. Add garam masala, paprika, coriander, cayenne pepper, ginger, and cinnamon stick. Stir fry 1 minute until fragrant and a smooth, incorporated paste.
Increase heat to medium and add tomato sauce and coconut aminos or sugar (Do not use the coconut sugar if on a Whole30). Simmer for 5 minutes or until sauce has thickened, stirring occasionally.
Add coconut cream, lemon juice, and meatballs and simmer for 5-10 minutes or until sauce has thickened slightly and meatballs are cooked through. Add plenty of salt to taste; using enough will cut the heavy spice flavor and round out the entire dish. Serve over cooked cauliflower rice with chopped fresh cilantro.