Preheat oven to 350°F (175°C). Grease a 9x13 inch baking pan. Peel and dice peaches into 1/2 inch pieces.
In a medium bowl, whisk flour, brown sugar, cinnamon, and salt. Cut in cold butter until coarse crumbs form. Stir in pecans and refrigerate.
In a large bowl, whisk together flour, baking powder, baking soda, salt, and cinnamon.
Beat softened butter and sugar until pale and fluffy, about 2-3 minutes. Add eggs one at a time, then mix in sour cream, milk, and vanilla.
Add dry ingredients to wet mixture all at once. Mix on low speed just until no streaks of flour remain.
Gently fold diced peaches into the batter with a rubber spatula until evenly distributed.
Pour batter into prepared pan and spread evenly. Sprinkle chilled streusel over the top, covering edge to edge.
Bake for 40-45 minutes until a toothpick inserted in the center comes out clean. Cool in pan on a wire rack for at least 20 minutes.
Whisk powdered sugar, milk, and vanilla for the glaze. Drizzle over the cooled cake.