Place sweet potato chunks in a large pot. Cover with cold salted water, bring to a boil over high heat, then reduce to a simmer. Cook 18 to 20 minutes until a fork slides through a chunk with zero resistance. Drain, then let sit undisturbed in the colander for 3 to 4 minutes to steam-dry.
Preheat oven to 180°C (350°F). Lightly grease a 23x33cm (9x13 inch) baking dish.
Transfer drained sweet potatoes to a large bowl and mash until smooth. Stir in melted butter and milk. Let cool 3 minutes, then add beaten eggs, brown sugar, vanilla, cinnamon, nutmeg, and salt. Mix until fully combined.
Pour filling into the prepared baking dish and smooth into an even layer about 3 to 4cm deep.
In a medium bowl, combine pecans, brown sugar, flour, cinnamon, and salt. Add cold butter cubes and rub with fingertips until the mixture forms coarse, uneven crumbs with some pea-sized butter pieces still visible.
Scatter streusel evenly over the filling. Bake uncovered for 30 to 35 minutes until the topping is deep golden brown and the filling edges are set.
Rest 10 minutes before serving.