Arrange the sweet potatoes in a single layer on a baking sheet. Place in the center of the oven and bake until fully cooked, 1 to 1 1/2 hours. To check for doneness, pierce one with the tip of a small knife; it should slide in and out easily. Set the potatoes aside until cool enough to handle.
Meanwhile, place the chicken stock, ham hock and 1 cup water in a medium pot and bring to a boil. Reduce the heat to medium-low and simmer, adding more water if the liquid runs low, until the tough skin of the ham hock softens, 30 to 45 minutes. Remove the ham hock and transfer to a flat surface. Peel away or use a knife to cut off the tough skin. Discard the skin and cut the meat beneath it into smaller pieces. Put the meat back into the stock and simmer gently over low heat so the meat flakes and flavors the liquid. You want to end up with 1 to 1 1/2 cups meaty, flavorful liquid. Keep warm.
In a small saucepan, melt the butter over medium heat until it turns a light brown color, 2 to 3 minutes. Remove from the heat and immediately stir in the brown sugar, cinnamon, orange zest and juice and stir to combine. Set aside.
Peel the sweet potatoes and break the flesh into chunks; put the chunks into a large pot. Add the coconut milk and 1 cup water and simmer over medium heat, 5 to 8 minutes. Puree the soup with an immersion blender or in small batches in a blender. Return the soup to the pot and stir in the brown butter and ham and liquid. Taste for seasoning. If the soup needs more flavor, add salt, pepper, a pinch of brown sugar or more orange zest.