Preheat oven to 350°F (175°C). Grease three 8-inch round cake pans and line bottoms with parchment paper.
In a medium bowl, whisk together flour, baking powder, baking soda, cinnamon, ginger, cloves, and nutmeg.
In a large mixing bowl, beat sugar and melted butter until light and smooth, about 2-3 minutes.
Add eggs one at a time, beating well after each addition. Mix in vanilla extract.
Gradually add the dry ingredients to wet ingredients in three portions, alternating with buttermilk (beginning and ending with dry ingredients). Mix just until combined after each addition.
Divide batter evenly among the prepared pans and smooth tops with an offset spatula.
Bake for 25-30 minutes until a toothpick inserted in center comes out clean and cakes spring back when lightly touched.
Cool in pans on wire racks for 10 minutes, then remove from pans and cool completely before frosting.
For the frosting: Beat cream cheese and butter until smooth and fluffy, about 3 minutes. Gradually add powdered sugar, then mix in vanilla and salt until light and fluffy.
Place one cake layer on serving plate. Spread about 1 cup frosting evenly over top. Place second layer on top and repeat. Add third layer and frost top and sides of cake.
Refrigerate for 20 minutes to set the frosting before serving.
Notes
For the best flavor, use spices purchased within the last 6 months.
Bring eggs and buttermilk to room temperature for the smoothest batter.
The cake can be made 1-2 days in advance and stored in the refrigerator.
Unfrosted cake layers can be wrapped and frozen for up to 3 months.
Nutrition facts are estimates and may vary based on ingredients used, portion sizes, and preparation methods.