To make the carrot cake: Preheat the oven to 350°F (180°C). Spray two 9-inch round cake pans well with non stick cooking spray and line the bottom of each pan with a parchment paper circle. Set aside.
In a large mixing bowl, whisk together the flour, baking powder, baking soda, cinnamon, ginger, nutmeg, and salt until well combined. Set aside.
In a separate large mixing bowl, whisk together the oil, eggs, brown sugar, granulated sugar, applesauce, and vanilla extract until fully combined. Add the grated carrots to the wet ingredients and mix until well combined.
Pour the wet ingredients into the dry ingredients and mix with a whisk or rubber spatula until just combined, making sure not to over mix the batter.
Pour the cake batter evenly between both prepared cake pans. Bake for 30 to 35 minutes or until the tops of the cakes are set and a toothpick inserted into the center of each one comes out clean.
Remove from the oven, transfer to a wire rack, and allow to cool in the pans for 20 to 25 minutes. Once the cakes have cooled, remove from the pans and return the cakes to the wire rack to finish cooling.
To make the cream cheese frosting: In the bowl of a stand mixer fitted with the paddle attachment, or in a large mixing bowl using a hand-held mixer, beat the cream cheese until smooth. Add the butter and mix for about 30 seconds to 1 minute until well combined and smooth.
Add in the powdered sugar and vanilla extract and continue mixing until fully combined, stopping to scrape down the sides of the bowl as needed.
To assemble the cake: Level the tops of each cake with a knife or cake leveler. Place one of the cake layers on a cake stand, top with a little over ½ cup of the frosting, and smooth it out into one even layer. Place the other cake layer on top and use the remaining frosting to frost the top and sides of the cake. Top with pecans or other toppings of choice, if desired.