Preheat the oven to 350 degrees F. Spray three 8- to 9-inch round cake pans with nonstick baking spray and set aside. Pour the flour, sugar, cornstarch, pumpkin pie spice, baking soda, and sea salt in the bowl of an electric mixer. Mix briefly, then turn the mixer on low and pour in the melted coconut oil, eggs, and vanilla. Scrape the bowl and turn on low again. Mix in the shredded carrots, coconut and chopped nuts.
Equally divide the batter between the three cake pans and smooth flat. Bake for 20-25 minutes until a toothpick inserted into the center comes out clean. Cool for 5 minutes in the pans, then flip the cakes out onto cooling racks and cool completely before frosting.
For the Cream Cheese Frosting:
In a clean mixing bowl, beat the softened cream cheese and butter together until very smooth. Scrape the bowl and beat again to be sure there are no clumps. Turn the mixer on low and slowly add 7 cups powdered sugar. Then beat in the vanilla and salt at a higher speed. If the frosting is too loose, beat in one more cup powdered sugar.
To toast the coconut, spread it out flat on a rimmed baking sheet. Place in a hot 350 degree oven and toast for 4-7 minutes. Watch the coconut carefully, it burns fast! Cool completely.
Spread 1/4 of the frosting evenly over one cake. Top with a second cake layer, then spread 1/4 of the frosting evenly over the second cake. Top with the final cake layer and press gently to even out the layers. Using a long spreader, spread the frosting that comes out from between the layers around the edges to create a "crumb coat" to catch the loose crumbs. Then scoop the rest of the frosting on top of the cake and spread in down over the sides, and then neatly over the top. Press the toasted coconut into the sides.
As with most cakes, you can keep this carrot cake out at room temperature for 3-4 days, covered. To prolong its shelf-life refrigerate, but always serve at room temperature. Leave it out on the counter for several hours before serving to warm gently.