Preheat your oven to 350°F (175°C). Grease a 9x13 inch baking dish and set aside.
In a medium bowl, whisk together the flour, baking powder, baking soda, cinnamon, nutmeg, ginger, cloves, and salt. Set aside.
In a large mixing bowl, cream the butter and sugar together until light and fluffy. Add the eggs, one at a time, mixing well after each addition.
Add the pumpkin puree and vanilla extract to the mixing bowl, and mix until well combined.
Gradually add the dry ingredients to the mixing bowl, alternating with the milk. Mix until the batter is smooth and well combined.
Pour the batter into the greased baking dish, and smooth it out with a spatula.
Bake for 30-35 minutes, or until a toothpick inserted into the center of the cake comes out clean.
While the cake is baking, prepare the frosting. In a large mixing bowl, beat the cream cheese and butter together until smooth and creamy.
Gradually add the powdered sugar and vanilla extract to the mixing bowl, and beat until the frosting is light and fluffy.
Once the cake has finished baking, remove it from the oven and let it cool completely before frosting.
Spread the cream cheese frosting over the top of the cooled cake, and serve.