Prep the pans. Preheat the oven to 350°F (177ºC). Butter two 9-inch round cake pans, line the bottoms with parchment paper, then lightly butter the parchment as well. Toast the walnuts. Spread the walnuts on a small baking sheet and toast for 7–8 minutes, or until fragrant. Let cool, then chop.
Mix the dry ingredients. In a medium bowl, whisk together the flour (2 cups), baking powder (2 teaspoons), salt (3/4 teaspoon), cinnamon (2 teaspoons), nutmeg (1/2 teaspoon), ginger (1/4 teaspoon), and cloves (1/8 teaspoon). Set aside.
Mix the wet ingredients. In a large bowl, beat the eggs (3). Add the oil (3/4 cup), buttermilk (3/4 cup), brown sugar (1 cup), granulated sugar (1 cup), and vanilla (1 tablespoon), then whisk until smooth and well combined.
Combine the batter. Add the dry ingredients to the wet ingredients and stir just until combined. Fold in the drained pineapple (1 can), grated carrots (2 cups), coconut (1 cup), raisins (1 cup), and toasted walnuts (1 cup) until evenly distributed.
Rest the batter. Let the batter sit for 10 minutes before baking. This gives the flour time to hydrate and helps create a better crumb.
Bake the cake. Divide the batter evenly between the prepared pans and spread it gently into an even layer. Tap the pans gently on the counter once or twice to release any large air bubbles. (A gentle tap is better than a hard bang for this type of batter).Bake until a toothpick inserted in the center comes out with a few moist crumbs but no wet batter, for about 30–35 minutes. The centers should spring back lightly when touched.Don’t pull the cakes too early — because this is a moist, heavy batter, underbaking can cause the layers to sink in the middle as they cool.Rotate the pans halfway through baking for even browning.Let the cakes cool in the pans for about 10–15 minutes before turning out onto a rack.