Prepare the carrot cake layer. Preheat oven to 350 degrees F. Grease two 9 inch cake pans. Line the bottoms with parchment paper. Peel and cook carrots until a fork easily can be poked in to them. One small bag of full sized carrots should yield about the right amount of pureed, cooked carrots. Drain the carrots and purree while still warm in a blender or food processor until they are smooth. Measure out 1 1/2 cups of the carrot puree and set aside.
Sift dry ingredients into a bowl. Stir dry ingredients together with a whisk to combine well. Add oil, eggs and vanilla. Beat well for about 2 minutes. Fold in walnuts, coconut, carrots and pineapple. Pour equal amounts of batter into each pan. Set in the middle of the oven and bake for about 50 minutes or until edges have pulled away from sides and toothpick inserted in middle comes out clean.
Remove from oven and let sit in pans 10 minutes. Turn out onto a rack and cool completely.
Prepare the cheesecake layer. Preheat the oven to 350 degrees F.
Melt the white chocolate, set aside to cool slightly.
In a large bowl using an electronic mixer, mix the cream cheese on low speed until creamy. Add the sugar and mix slowly until smooth. On low speed, mix in the flour. Turn off the mixer and scrape down the bowl and beater with a rubber spatula. Add one egg at a time, mixing well after each addition, scraping the sides of the bowl. Mix in the vanilla and cream until the mixture is smooth. Using a large spoon, stir in the melted white chocolate until incorporated.
Pour the batter into a parchment paper lined 9-inch spring form pan. Bake for about 30 minutes or until the center is set when you slightly shake the pan. Allow to cool before removing from the spring form pan. Allow to cool completely before assembling the cake.
While you’re waiting for the cakes to cool, go ahead and make the cream cheese frosting. Combine all ingredients in a medium bowl and beat with an electric mixer at medium-high speed until smooth and fluffy. Set to the side for once the cake is assembled.
ASSEMBLE IT ALL. Place your bottom layer of cake on the dish/ plate you will be serving it on with the leveled side facing up.
Spread a thin layer of cream cheese frosting on top – it doesn’t matter how messy it looks since it will be covered.
Transfer the cheesecake to the top of the cake, then spread another thin layer of cream cheese frosting on top of the cheesecake.
Top with the remaining layer of cake – leveled side down so that you have a clean surface. Use the rest of the cream cheese frosting to frost the entire cake.