Rub the fish with the lemon juice and 1 teaspoon salt, and set aside.
Place the coconut cream, coconut milk, and water in a blender and let soak for 5 minutes.
Add the coriander and cumin seeds, garlic, ginger, chili pepper (if using), and sugar.
Blend to a smooth mixture.
Set aside.
Heat the oil in a nonstick pan over medium heat and saute the onion until golden brown.
Stir in the tomato, dry spices, and vinegar.
Stir-fry for 3 minutes.
Add the coconut mixture and bring to a boil.
Reduce the heat to very low and add the fish.
Cover and cook for about 10 minutes or until the fish flakes easily with a fork, lightly stirring the sauce occasionally.
Add salt, if necessary.
Garnish with chopped cilantro.
Serve hot.