Lay the slice of bread in a shallow dish and pour the milk over it. Let it soak for 1-2 minutes, then squeeze out most of the milk.
Put the pork in a mixing bowl with the chilli, half the chopped coriander, all the ginger and a pinch of salt. Add the bread and mix thoroughly, then knead the mixture for 1-2 minutes. Divide it into 16 equal balls, each slightly larger than a walnut.
In a nonstick saucepan, heat the oil over a medium heat, add half the meatballs and fry for 2-3 minutes, stirring, until browned. Remove the meatballs and keep them warm, then brown the remaining meatballs. Add them to the first batch of meatballs and keep them warm.
Remove the pan from the heat and add the cinnamon sticks to the oil remaining in the pan. Allow them to sizzle for 20-25 seconds, then return the pan to the heat and add the garlic, ginger and onions. Fry over a medium-low heat for 8-9 minutes, stirring frequently, until the onions have softened and start to colour.
Stir in the paprika and turmeric and continue to fry for 1-2 minutes, then add the cider, some salt and the browned meatballs. Bring the liquid to a simmer, cover the pan and reduce the heat to low, then cook for 15 minutes.
Meanwhile, heat a small heavy-based pan over a medium heat. Add the coriander and cumin seeds and the peppercorns and dry-fry them for 30 seconds, stirring, until they release their aromas. Remove them from the pan and leave them to cool, then grind them in a spice mill or with a pestle and mortar.
Add the spice mixture to the meat, cover and continue simmering for a further 25-30 minutes.
Remove the cinnamon sticks and stir in the crème fraîche and the remaining chopped coriander. Serve garnished with sprigs of coriander.