Preheat the oven to 350°F (175°C) and grease the muffin tin or line it with muffin liners.
In a large mixing bowl, combine the all-purpose flour, sugar, baking powder, salt, and cinnamon.
In another bowl, whisk together the eggs, milk, and melted butter. Add the vanilla extract and mix until well combined.
Pour the wet ingredients into the dry ingredients. Stir gently until just combined; do not overmix.
Fold in the chopped peaches until evenly distributed in the batter.
In a separate small bowl, prepare the topping by mixing together flour, brown sugar, softened butter, and cinnamon until crumbly.
Divide the muffin batter evenly among the muffin cups, filling each about two-thirds full. Sprinkle the topping mixture over each muffin.
Bake in the preheated oven for 18-20 minutes, or until a toothpick inserted in the center comes out clean.
Allow the muffins to cool in the pan for 5 minutes before transferring them to a wire rack to cool completely.