Start by preheating your oven to 350°F. Grease a 9-inch springform pan or a 9×9-inch square pan with nonstick spray or line with parchment paper. This helps the cake release easily after baking.
In a small bowl, combine the flour, brown sugar, and cinnamon. Add the cold butter cubes and use a pastry cutter or fork to blend until the mixture resembles coarse crumbs. If using nuts, stir them in now. Pop the streusel in the fridge while you mix the batter so it stays firm.
In a medium bowl, whisk together the flour, baking powder, baking soda, salt, cinnamon, nutmeg, and cloves. This step evenly distributes the leavening and spices for a well-balanced flavor throughout.
In a large bowl, use a hand or stand mixer to cream the softened butter with both sugars until light and fluffy, about 2–3 minutes. This adds air and structure to your cake.
Beat in the eggs one at a time, then mix in the pumpkin puree, vanilla, and sour cream. The batter may look slightly curdled at this point, but it will smooth out once you add the dry ingredients.
Gradually mix the dry ingredients into the wet mixture just until combined. Be careful not to overmix. Pour the batter into your prepared pan and smooth the top. Sprinkle the streusel topping evenly over the batter.
Bake for 40–45 minutes or until a toothpick inserted into the center comes out clean. Let the cake cool in the pan for 10–15 minutes, then transfer to a wire rack. Drizzle with optional glaze once fully cooled for a bakery-style finish.