Preheat oven to 350°F (175°C). Grease a 9-inch square baking pan, line with parchment paper leaving a 1–2 inch overhang on two sides, then lightly grease the parchment.
Whisk together flour, brown sugar, cinnamon, and salt in a medium bowl, then cut in cold cubed butter using a pastry cutter until the mixture resembles coarse, pea-sized crumbs. Stir in chopped walnuts and refrigerate until needed.
Stir together ¼ cup brown sugar and 1 teaspoon cinnamon in a small bowl until evenly combined. Set aside.
In a large bowl, whisk together flour, baking powder, baking soda, salt, cinnamon, and nutmeg for about 30 seconds until evenly combined. Set aside.
Beat softened butter and granulated sugar together on medium-high speed for 3 to 4 minutes, scraping down the bowl halfway through, until the mixture is pale, light, and fluffy.
Add the eggs one at a time, beating for 30 seconds after each addition, then mix in the vanilla extract. Scrape down the sides of the bowl.
On low speed, alternate adding the dry ingredients and sour cream in three additions each, beginning and ending with the dry ingredients, mixing just until no dry streaks remain. Do not overmix.
Using a rubber spatula, gently fold the diced pears into the batter until evenly distributed.
Spread half the batter into the prepared pan, sprinkle the cinnamon-brown sugar filling evenly over it, then spread the remaining batter on top. Retrieve the streusel from the fridge and sprinkle it evenly over the surface, pressing it gently to adhere.
Bake on the center rack for 50 to 55 minutes, until a toothpick inserted in the center comes out clean or with a few dry crumbs and the streusel is deep golden brown.
Cool the cake in the pan on a wire rack for 20 to 25 minutes, then use the parchment overhang to lift it out. Serve warm or at room temperature.