Preheat the oven to 375°F and line a 12-cup muffin tin with paper liners or lightly grease the cups.
Make the streusel by mixing the flour, brown sugar, and cinnamon in a small bowl. Cut in the cold butter with a fork or your fingertips until the mixture looks crumbly.
Set it aside.
Mix the dry ingredients in a large bowl. Stir together the flour, granulated sugar, brown sugar, baking powder, baking soda, salt, and cinnamon.
Whisk the wet ingredients in a separate bowl. Combine the eggs, melted butter, yogurt or sour cream, milk, and vanilla until smooth.
Combine the batter by pouring the wet mixture into the dry ingredients.
Stir gently until just combined. A few small lumps are fine.
Fold in the peaches carefully so they stay evenly distributed without breaking apart too much.
Fill the muffin cups about 3/4 full. Spoon the streusel evenly over the tops, pressing it lightly so it sticks.
Bake for 18 to 22 minutes, or until the tops are golden and a toothpick inserted in the center comes out clean or with a few moist crumbs.
Cool the muffins in the pan for 5 minutes, then transfer them to a wire rack to finish cooling.