You cannot point to an "External" script file, BUT you can have a common script file that does NOT need to be pasted into your script.js file. The basic steps are as follows:
1. Create your aux. script file.
2. Add your aux. script file as a resource.
3. Extract form files, and then edit the manifest.xsf.
4. Locate the <xsf:scripts> block, and then add your aux. script file to the list.
NOTE: If you don't find the xsf:scripts file, then you haven't actually created script.js yet.
Now you can access functions from the aux. script file as if they were internal to script.js.
Granted, this still is not a shared script file, but its a whole lot closer than what you've been doing.
Greg Collins [InfoPath MVP]