Sure, I understand the intent of the package. But we can think about this a different way that makes it useful for any OpenACS setup.
Instead of thinking of copying forums from one class to another, you are really copying the forum from one package instance of forums to another, since the forum cannot exist outside of the forums package.
Same thing with files in file-storage etc. This would possibly complicate the UI. Its easy for .LRN since there is one forums package per community, etc. If we wanted to handle this per subsite, it would have to be able to let you select the forums package within the target subsite. Of course we can imagine whether its ideal to have multiple forums packages in a subsite or not, but since the system allows it, we would need to support it.
This all leads to the simplification of the entire thing if dotlrn used subsites, or at least behaved as if it did. This ability to stand-in for a subsite is availble in OpenACS 5.2 and I think any .LRN based on it should support this feature. It would make programming with .LRN easier and reduce the amount of custom checking if .LRN is installed.