Whether or not it is a good practice depends on whether or not you need to have direct access to those files (on a remote OmniFocus client). If you don't need access, then linking the files would be a better choice for keeping your sync times down (especially so if the files are files that OmniFocus on the iPod Touch/iPhone cannot display). If on the other hand you would find it useful to be able to reference the files on your portable device, it might be worth a somewhat longer sync time. I believe that the data is only moved once, not every time you do a sync, so as long as you don't attach so many files that OmniFocus runs out of memory on the iPhone/iPod, the impact may not be very great. Bear in mind that I have no hands-on experience with those devices, only with sync between OmniFocus desktop clients, so I cannot guarantee this happy state of affairs.
I am reasonably certain that OmniFocus makes every effort to keep your database on all devices identical given the absence of any user interface allowing you to configure it otherwise. You can sync OmniFocus between desktop clients, so clearly any attached files need to be sent to the repository. Theoretically, Omni could provide a means for you to specify which attachments you would be willing to have uploaded to your iPhone/Touch, but that now means that your database there is no longer a complete copy, and in the case of a sync problem where it asked which version to keep, answering "local" on the mobile device would cause some of your data to go up in smoke, perhaps unnecessarily.
Assuming that OmniFocus on the iPhone/Touch allows you to follow a link in the notes field of an action, you could store documents you wanted to access in this fashion on your personal web site and just put links to them in your OF database. The links will get synced around, and you'll still have access to the files through them without having to store them on the mobile device.