Preheat the oven to 350°F (175°C). Lightly grease a medium baking dish and set aside.
In a large mixing bowl, combine sliced peaches, sugar, brown sugar, lemon juice, cornstarch, vanilla extract, and cinnamon. Mix gently until the peaches are evenly coated and slightly glossy. Let the mixture sit for a few minutes to release juices.
Transfer the peach filling into the prepared baking dish. Spread it evenly so the layer is flat and uniform.
In a separate bowl, mix flour, oats, brown sugar, cinnamon, and salt. Add cold butter cubes. Use your fingers or a fork to combine until the mixture forms coarse crumbs with uneven texture.
Sprinkle the topping evenly over the peaches. Do not press it down. Keep the texture loose and crumbly for best results.
Place the dish in the oven and bake for 35 to 40 minutes. The topping should be golden brown, and the filling should be bubbling at the edges.
Remove from the oven and allow the peach crisp to cool for 10 to 15 minutes before serving. This helps the filling set properly.