Step 1: Preheat your oven to 350°F (175°C). Grease and flour your two 8-inch round cake pans, or line them with parchment paper for easy removal.
Step 2: In a large mixing bowl, combine the vegetable shortening and unsalted butter. Beat them together until creamy and well combined. Gradually add in the granulated sugar and continue to beat until the mixture is light and fluffy.
Step 3: Add the egg yolks to the butter mixture one at a time, ensuring each yolk is fully incorporated before adding the next.
Step 4: In another bowl, whisk together the all-purpose flour, kosher salt, and baking soda. Gradually add this dry mixture to the wet ingredients, alternating with the buttermilk.
Step 5: Stir in the vanilla extract, coconut extract (if using), toasted pecans, and shredded coconut. Ensure everything is well mixed but take care not to overmix.
Step 6: In a separate bowl, beat the egg whites until stiff peaks form. Gently fold the egg whites into the cake batter.
Step 7: Divide the batter evenly between the prepared pans. Bake for about 25-30 minutes, or until a toothpick comes out clean. Allow to cool for about 10 minutes before transferring to wire racks.
Step 8: In a large bowl, beat the cream cheese and unsalted butter until creamy. Gradually add the powdered sugar, cream of coconut, sour cream, vanilla extract, and kosher salt until smooth and fluffy.
Step 9: Once the cake layers are completely cooled, place one layer on a serving plate. Spread frosting on top, then place the second layer on top.
Step 10: Decorate the cake with whole toasted pecans on top.