Animating separate objects / items independently in the same action
Blender Actions can't have different effects on different objects.  So, if you want an entire character to be managed by a single Action, it needs to be a single object — or at least linked to a single Armature. Assuming you're exporting to glTF to bring these models into three.js, you may find the exporter documentation on animation useful. Multiple NLA Tracks with the same names will be exported as a single animation, even if they affect multiple objects.