Make the pineapple filling. In a 2 to 3-quart saucepan, whisk the sugar and cornstarch together, then add the crushed pineapple and whisk until combined. Bring to a boil over medium-high heat and cook 5 to 7 minutes, stirring regularly, until thickened.
Finish the filling. Remove from the heat and whisk in the rum. Pour into a bowl, cool at room temperature for 10 to 15 minutes, then refrigerate until ready to use. It will thicken more as it cools.
Prep the pans. Preheat the oven to 350°F. Spray three 8-inch round baking pans with cooking spray and line with parchment paper.
Sift the dry ingredients. Set a fine mesh strainer over a bowl and sift the flour, baking powder, and salt together. Set aside.
Cream the butter and sugar. In the bowl of a stand mixer fitted with the paddle attachment, cream the butter and granulated sugar on medium-high speed until light, fluffy, and pale, 3 to 4 minutes. Add the egg whites in two additions, mixing on medium until incorporated after each.
Combine the wet ingredients. In a small bowl or measuring cup, whisk together the coconut milk, sour cream, vanilla extract, and coconut extract until smooth.
Alternate dry and wet. Add one third of the flour mixture and mix on low until just combined. Add half the milk mixture, then another third of the flour, the remaining milk, and the remaining flour, mixing on low after each addition just until combined.
Bake the cakes. Divide the batter between the three pans, about 2 cups (480 grams) each. Bake 20 to 22 minutes, until a toothpick inserted in the center comes out clean.
Cool the cakes. Cool in the pans on wire racks for 10 to 15 minutes. Run a knife around the edges, invert onto wire racks, and cool completely, 45 to 60 minutes.
Toast the coconut. In a large skillet over medium heat, toast the flaked coconut until light brown and fragrant, stirring regularly. Set aside to cool.
Make the frosting. In a stand mixer fitted with the paddle attachment, cream the butter and cream cheese on medium-high until smooth, about 2 minutes, scraping the bowl once. Add the powdered sugar, mix on low until it starts to come together, then increase to medium-high and mix until fully incorporated and thick.
Flavor the frosting. Add the vanilla, coconut extract, and rum, and mix on medium until fully incorporated.
Start assembling. Place 2 to 3 cups of frosting in a large piping bag fitted with a large round tip. Set one cake layer on a cake stand and pipe a circle of frosting around the outer edge to make a dam.
Fill and stack. Spread half the pineapple filling inside the frosting ring. Add the second cake layer, repeat the frosting dam and pineapple filling, then top with the final layer. Frost the sides and top, reserving 1 to 1½ cups for piped swirls.
Finish the cake. Press the toasted coconut onto the sides of the cake. Pipe 8 swirls on top and place a cherry on each. Serve immediately or refrigerate until ready to serve.