How would I bend a cylinder while keeping it's shape?
It seems like your mesh has far too few vertices. Try to add some subdivisions, especially at the elbow. Blender needs enough vertices at the position of bending to create organic looking bends. After that, reconnect the mesh with automatic weights. The next you could check is "preserve volume" in the armature modifier of your mesh, and last, position your armature modifier before any subdivision surface modifier.

Additionally, it seems you are using two armature modifiers. It's probably better to create one rig with connected bones, and apply them to your mesh with automatic weights. This way, each bone has a different weight, a different strong influence on a single vertex. There are many tutorials on this theme available, and its to much to explain in short here.