I've noticed it will re-cache that package when it's exactly the same, just the targets of the job differ. I think that is what your saying.
To me it's a flaw and should be fixed. The targets should not be a part of the equation of whether to cache or not, just the package.
If you are using 8.0, you should look at using the advanced repeaters. These will only cache the file once for any clients using that repeater. They also offer a number of other bandwidth friendly features such as compressing the source data and optionally throttling the download speed.
If you are running more than on App server I strongly recommend not using the Advanced Repeaters in 8.0. We do have massive problems in our infrastructures. According to BMC the AdvRep in 8.0 can't handle multii threaded environments.
BMC did promisse us a far better implementation for 8.2 of the Advanced Repeaters.