1. Preheat oven to 350ºF. Grease 3 9-inch round cake pans, line bottoms with parchment paper and grease parchment.
2. Make cake: Sift together flour, baking powder, baking soda, salt and spices. In a large bowl, using an electric mixer on medium speed, cream butter and brown sugar until fluffy. Beat in eggs one at a time. Stir together milk and sour cream. Beat half of flour mixture into butter mixture until just combined, then stir in sour cream mixture. Stir in remaining flour mixture until just combined; do not overmix. Divide batter among pans and bake until a toothpick inserted in center of a cake comes out clean, about 25 minutes. Cool pans on wire racks for 10 minutes, then turn cakes out and cool completely.
3. Make frosting: Beat cream cheese and butter until fluffy. Slowly add confectioners' sugar, beating until well combined and smooth. Beat in vanilla. If frosting is too soft, set it in refrigerator for 15 to 20 minutes to firm up, then beat it again before icing cake.
4. Assemble cake: Place 1 cake layer on a serving platter and spread with frosting. Add second layer and spread with more frosting. Top with third cake layer. Frost top and sides of cake. Chill approximately 2 hours before serving.