For 1, you might be better of selecting the poly on the end of the cylinder and setting the Reference Coordinate System to Local (drop-down next to the scale button on the toolbar - or alt+right click in the viewport and select Local from the top-right menu). Then moving it that way. Or if there isn't a poly there, create…
Now that we're at it, can what i'm showing here be done in any shape or form in Max and/or any other application? I'm aware what I'm asking is kind of peculiar to the technical guy but meh, call me curious... As for OP's issue I personally either use the local coordinate or use funky's script... What I'm asking is to…
1. Like the others already said, use the "local" coordinates for the Face to drag it and increase the length of the cylinder, or you can set it to "gimbal" coordinates, sometimes this works, because it takes the middle value of all values, so if you select the vertices on the edge and set the coordinates to "gimbal" it…