Preheat oven to 350 degrees F. In a large bowl, melt the butter (4 tablespoons). Spread a little bit of the melted butter on the bottom and sides of a baking dish, roughly 8" x 10" (or up to 9x13).
Steam the cubed sweet potatoes until tender in a steamer basket in a large pot with 1-2" of water (for about 20 minutes).
While the potatoes are cooking, add the heavy cream (1/4 cup), 2 eggs, maple syrup (1/4 cup), vanilla extract (1 teaspoon), and kosher salt (1/2 teaspoon) to the bowl with the melted butter. Whisk together until smooth.
To make the streusel topping, mix together the melted butter (4 tablespoons), flour (1/2 cup), brown sugar (1/4 cup), and ground cinnamon (1 teaspoon) until a smooth, dough-like consistency forms (it will be quite thick). Add the sliced almonds (1 cup) and combine well- it's easiest to use your hands to do this, crumbling up the mixture as you go.
Add the cooked sweet potatoes to the large bowl with the egg mixture and mash with a potato masher until relatively smooth and well combined with the other ingredients (leave a few chunks). Spread in prepared baking dish. Spread the streusel mixture evenly on top of the sweet potato mixture.
Bake for about 30 minutes, or until mixture is almost set in the middle and golden brown across the top. Serve hot or at room temperature.
Notes
To make ahead of time, spread the sweet potato mixture in prepared baking dish and cover. Mix the streusel topping and store separately in your fridge. Store for up to 3 days. Just before baking, sprinkle the topping on and bake as directed. It may need a few more minutes, since you're starting out cold.
Make ahead on Thanksgiving morning: because this casserole can be served at room temperature, you can treat it kind of like a pie. Bake it the morning of Thanksgiving and keep it on your counter for a few hours until you're ready to serve- no need to reheat.
Instead of sliced almonds, you can use slivered or chopped almonds, or another nut such as chopped pecans or walnuts. For a nut-free version, use sunflower and/or pumpkin seeds.
You can cook the sweet potatoes any way you like- bake them and scoop out the flesh, use an instant pot, microwave them, or boil them. As long as you have cooked sweet potatoes, you're good to go!
If you are using unsalted butter, add 1/4 teaspoon more kosher salt to both the filling and the topping.
Time saving tip: The thinner the casserole, the less time it will take to cook, so if you are using a 9x13 pan it may only take 25 minutes.