>It was originally just meant to handle localizable resources
Not quite. An application's executable code was also stored in the resource fork, as CODE resources (one or several, so parts of the code could be loaded and unloaded as needed; initially there was also a size limit of 64k per CODE resource).
When Apple switched to PPC, the PPC code was stored in the data fork and the 68k code in CODE resources.