How do I create a route that opens an external file?
Is there a way to achieve this without calling a controller from the route file?


No, a route needs a controller, no exceptions. If you can find an existing controller/method that does what you need, reliably, then you should use that. If not, you'll need your own controller and method.