Preheat your oven to 350°F (175°C) and position the rack in the middle. Lightly grease a 9x5-inch loaf pan, then line with parchment paper, leaving an overhang on the sides for easy removal.
Toast all walnuts (for both bread and topping) on a baking sheet for 8-10 minutes until fragrant and golden.
In a medium bowl, whisk together the flour, baking soda, baking powder, salt, cinnamon, nutmeg, cloves, and ginger.
In a large bowl, whisk together the granulated sugar, brown sugar, and oil until well combined.
Add the eggs one at a time, beating well after each addition. Stir in the vanilla extract and pumpkin puree until the mixture is smooth and uniform.
Gradually fold the dry ingredients into the wet mixture, stirring just until combined.
Gently fold in 1 cup of toasted and chopped walnuts.
In a small bowl, combine the remaining toasted walnuts (1/2 cup), brown sugar, cinnamon, and melted butter for the topping.
Pour the batter into the prepared loaf pan and smooth the top. Sprinkle the crunchy walnut topping evenly across the surface, gently pressing it into the batter.
Bake for 60-65 minutes, or until a toothpick inserted into the center comes out with just a few moist crumbs attached. If the top browns too quickly, tent with aluminum foil after 45 minutes.
Allow the bread to cool in the pan for 10 minutes, then use the parchment paper overhang to lift it out onto a wire rack to cool completely for another 20 minutes.