I noticed that the mentioned Bones ("rightitem" and "leftitem") were positioned differently on the Player models, which is easy to see if you look at the images, where the held Mace changes position when the skin model is changed (there are 4 images, where 2 of them are skins directly from my gallery, while the remaining 2 are from that skin customization area that exists within Minecraft). It may seem very simple, but for those who work with 3D items (Attachables) that "adapt" to their skin (e.g., creating a glove that can receive sword enchantments, and it being 3D to cover the Player's hand), it becomes horrible to create these 3D models if these mentioned Bones are not in the same position.
Based on my analysis of the standard Player files.geo.json (the one that uses the phone's gallery skin and has thick arms instead of slim ones) and the Humanoid Mobs files.geo.json, the "rightitem" should be at the Pivot "[-6, 15, 1]", and the "leftitem" at "[6, 15, 1]", both positioned 3 pixels above the "down" face of the arms (Y pivot), the pivot tends to be positioned in the middle of the arm cube (except for models with arms thinner than 4px. X pivot), and 3 pixels behind the "north" face of the arms (these are just technical details, just to give you an idea, XD. Z pivot). With this in mind, simply adjust the aforementioned Bones to be at the same value. This way, regardless of the skin and model used, the 3D items, Vanilla or AddOns, will fit correctly and remain in their original positions.
Thank you for helping us improve Minecraft! We saved your files: