In a small sauté pan, toast the coriander and cumin seeds over medium heat until aromatic, 2 to 3 minutes. Shake the pan frequently to keep the seeds from burning on any sides. Remove from heat and grind the seeds, along with the cardamom seeds, in a spice grinder, coffee mill or using a mortar and pestle.
Transfer the ground seeds to a mortar and pestle or a food processor. Add the nutmeg, clove, chiles, garlic, shallot, lemongrass, galangal and kaffir lime leaves. Pound the ingredients until finely pulverized with no visible chile pieces.
Add the shrimp paste and mash to combine. (If using a food processor, drizzle in a little water as needed to purée the ingredients to a paste.) This makes about 1 1/4 cups curry paste, more than is needed for the recipe. The paste can be made up to 2 weeks in advance, covered and refrigerated until needed.
In a large, heavy-bottom saucepan, heat the oil over medium heat until hot. Stir in the curry paste. Cook the curry paste, stirring frequently, until aromatic, 1 to 2 minutes.
Stir in the coconut cream (the thicker liquid at the top of the can). Simmer until the oil separates, 2 to 3 minutes.
Stir in the potato and cook, stirring frequently, until the potatoes just begin to soften, 7 to 10 minutes. Stir in the chicken and cook, stirring frequently, until the chicken cubes turn opaque on the outside, about 3 minutes.
Stir in the peanuts and tomato and remaining coconut milk. Simmer for a few minutes to marry the flavors.
Stir in the sugar and fish sauce. Simmer, stirring frequently, until the mixture darkens and the oil rises to the top, 15 to 20 minutes. If the sauce begins to thicken too much, stir in a little water as needed.
Remove from heat and serve immediately over rice.