Preheat oven to 350°F (177°C). Grease and line three 8-inch cake pans with parchment paper.
In a bowl, whisk together cake flour, baking powder, baking soda, and salt.
In a separate bowl, beat butter and sugar until creamy.
Add egg whites, then mix in sour cream, vanilla extract, and coconut extract.
Gradually add dry ingredients and coconut milk, mixing on low speed.
Fold in shredded coconut and ensure batter is smooth.
Divide batter evenly into pans and bake for 21–24 minutes.
Cool cakes completely before assembling.
For frosting, beat butter and cream cheese until smooth.
Add sugar, coconut milk, vanilla, coconut extract, and salt. Beat until fluffy.
Level cake layers and assemble by spreading frosting between layers.
Frost the entire cake and coat with shredded coconut.
Slice and serve your Fluffy Moist Coconut Cake.