Change the Order of the Euler Rotation.
If you wish to animate the rotation of the arm by keyframing in only one axis: Possibly the simplest way is to change the order of the Euler Rotation. If the order is changed to
'ZYX' the arm can be swivelled around local z axis without it being affected by its y axis rotation.
@OmarAhmad 's answer shows well the "seemingly erratic" nature of the x, y, z rotation values with differing orders, in this case
'XYZ' as in original file.
Changing the 3D view transform orientation to local also aids to visualize it's the local z axis you wish to rotate on.
To set local X as the rotation axis.
Part 2 in response to "Is there a way to reset or rotate the arm so it can rotate correctly only with the x-axis?"
shiftS Snap 3D cursor to origin. Tab into edit mode and select all. Make sure pivot point is set to 3D cursor and your are in front ortho view NUMPAD 1
R-90 will rotate such that x axis is pivot axis.
Tab back to object mode.
R90 will rotate the arm back to shoulder. You can now rotate on local x axis using
Other methods could be to use an armature, or empties at the joints.