If you use the attachments, for the most part it needs that long url so it can find the right attachment data.
An option is to store the PDF in the media library instead, so you can control the path, you do lose the ability to index the file content with that though.
Other option is to store the file as a file object on the tree, CMS.file, this way you can point to the node on the tree and it will give the file itself.