Preheat the oven to 350 degrees F.
Use the extra flour to evenly dust two 9-inch cake pans.
In a medium bowl, add the remaining 2 1/4 cups of the flour, the baking powder, the baking soda, and the salt and stir to combine.
In a small bowl, add the buttermilk, the heavy cream, 2 teaspoons of the vanilla extract, and the coconut extract and stir to combine.
In the bowl of a stand mixer, add 1 1/3 cups of the sugar and 2 sticks of the butter and mix until it is well-combined, about 3 minutes.
Add the eggs, 1 at a time, to the sugar mixture, while beating on medium-high speed, until it is light and fluffy, about 3 minutes.
Reduce the mixer speed to low. Add 1/2 of the flour mixture to the sugar mixture and mix until it is just combined.
Add buttermilk mixture to the batter mixture and mix until it is fully incorporated.
Add the remaining flour mixture to the batter mixture and mix until it is just combined.
Use a rubber spatula to fold 2/3 cup of the coconut into the batter.
Evenly pour the batter into each of the prepared cake pans.
Bake the cakes, rotating them halfway through, until a toothpick inserted into the center comes out clean, about 25 minutes.
Transfer the cake pans to a wire rack and let the cakes cool completely.
Invert the cakes onto the wire rack.
Use a serrated knife to cut the domes off of the cakes to level the surfaces, then cut each of the cakes in half horizontally, creating 4 thin layers.
While the cakes are cooling, in a saucepan over medium heat, add 1 can of the crushed pineapple, the remaining sugar, and the cornstarch and cook, stirring constantly, until the sugar dissolves and the mixture thickens into a glossy filling, about 10 minutes.
Pour the pineapple filling into a heat-safe bowl and place it in the refrigerator until it is chilled.
In a large bowl, add the cream cheese, the remaining butter, and the sour cream and use a clean electric hand mixer to beat until it is smooth.
Add the confectioners' sugar and the remaining vanilla extract to the cream cheese mixture and mix on low speed until it is just combined.
Beat the cream cheese mixture on medium-high speed until it is the consistency of a spreadable frosting, about 3 minutes.
Place 1 of the cake layers on a cake stand, then evenly spread 1/2 of the pineapple filling across its surface.
Add 1 of the remaining cake layers on top of the pineapple layer, then evenly spread 1/2 cup of the frosting over the top.
Add 1 of the remaining cake layers on top of the frosting layer, then evenly spread the remaining pineapple filling across the cake's surface.
Add the remaining cake layer on top of the pineapple layer, then spread the remaining frosting over the surface and down the sides of the entire cake.
Evenly sprinkle the remaining coconut over the cake.
Slice and serve.