Take out the eggs, butter and cream cheese for the recipe so that they come to room temp.
Preheat the oven to 400℉.
Roast a large sweet potato or 2 small ones for 1 hour or until fork tender. Allow to cool to room temperature.
Lower the oven to 350℉.
Into a large bowl, add butter and sugars. Cream together until light and fluffy.
Add room temp eggs and mix well. Then add vanilla extract, sweet potato puree and sour cream and mix well.
Add in the cinnamon and nutmeg and mix.
Add 1 cup of flour and mix. Then add the milk and mix until combined. Then add the other cup of flour along with salt, baking soda, and baking powder. Mix until just combined. Do not over mix or the cake will be dense.
For the cream cheese filling, mix the sugar, cream cheese, egg and vanilla extract in a small bowl. Mix well until creamy. Set aside.
For the crumble topping, mix the flour, brown sugar, chopped pecans, salt and cinnamon. Mix and then pour the melted butter over the mixture and mix with a fork to form crumbles. Set aside.
Spray a 9x9 pan pan with baking spray and then line it with parchment paper it helps to make it stick to the pan.
Pour half the batter into the pan and spread it out. Then add the cream cheese filling on top and spread it out. Then the other half of the batter on top of that and spread it out. Sprinkle with the crumble topping to cover the entire cake.
Bake at 350℉ for 1 hour 20 mins or until a knife comes out clean. Time may vary depending on your oven.
To make the sugar glaze, add 1 cup of confectioners sugar with 1 1/2 tbsp of water, 1/2 tsp vanilla extract to a bowl and mix. Drizzle onto the cake once it has cooled.