Preheat the oven to 350°F. Grease a 9x5-inch loaf pan and line it with parchment paper, leaving an overhang on the sides for easy removal.
In a medium bowl, whisk together the flour, baking soda, baking powder, cinnamon, and salt.
In a large bowl, whisk together the mashed bananas, melted butter, brown sugar, eggs, sour cream, and vanilla until smooth.
Add the dry ingredients and stir gently just until combined. Do not overmix.
Pour the batter into the prepared loaf pan and smooth the top. In a small bowl, stir together the flour, brown sugar, cinnamon, and salt for the streusel. Add the melted butter and mix with a fork until crumbly, then stir in the chopped nuts, if using.
Sprinkle the streusel evenly over the batter, gently pressing it down with a fork so it adheres. Bake for 55 to 65 minutes, or until a toothpick inserted into the center comes out clean or with a few moist crumbs. If the topping browns too quickly, loosely tent the loaf with foil during the last 15 to 20 minutes of baking.
Allow the banana bread to cool in the pan for 20 minutes, then use the parchment paper overhang to carefully lift it onto a wire rack to cool completely.
Slice and serve warm or at room temperature. Enjoy plain or spread with butter, honey butter, cream cheese, or your favorite fruit butter.