Preheat your oven to 375°F. Butter a 12-inch cast iron skillet or a medium casserole dish thoroughly to prevent sticking, then set aside.
In a large bowl, whisk together the mashed sweet potatoes, 1 cup of granulated sugar, 3 large eggs, 2 tsp pure vanilla extract, 2 tsp pumpkin pie spice, and 1/2 tsp salt until fully combined. Slowly whisk in the heavy cream until the mixture is smooth and homogenous. Pour this sweet potato mixture into your prepared skillet or casserole dish and spread it out evenly.
In a medium bowl, whisk together the all-purpose flour, 1 1/2 cups granulated sugar, 2 tsp cinnamon, and 1/2 tsp salt. Pour in the remaining melted butter and stir with a fork (or use a hand mixer) until the mixture becomes crumbly. I like to use my hands to help create bigger chunks for the topping.
Evenly spread the cinnamon streusel topping from Step 3 over the sweet potato mixture from Step 2. Bake in the preheated oven for 40 to 45 minutes, or until the filling is set, and the top is golden brown.
Let the dessert cool for about 10 minutes after baking so the filling can set—a little patience here makes serving much easier. Serve warm, topped generously with vanilla ice cream. For an extra treat, I like to add a light dusting of cinnamon over the ice cream.