Preheat the oven to 350°F. Line a 7x11 baking dish with parchment paper and spray with baking spray.
Make cake. In a bowl, cream together butter and sugar. Add the sour cream, vanilla, and eggs to the bowl and mix until combined.
Add the flour, baking soda, baking powder, cinnamon, and salt, and beat until incorporated.
Fold in the apples and walnuts.
Prepare the cream cheese layer. In a bowl, beat the cream cheese, vanilla, and sugar until creamy.
Prepare streusel topping. Combine the flour, cubed butter, cinnamon, brown sugar, and granulated sugar until the mixture is crumbly and set aside.
Assemble. Add the cake mixture into the prepared pan and spread evenly. Drop the cream cheese over top of the cake and spread evenly. Top with the crumble topping.
Bake for 35-40 minutes. Check if the cake is done by inserting the toothpick, making sure it comes out clean.
Serve and enjoy, friends!