In my opinion, the second/lower shirt fits better - the first/top looks a bit short on the second picture. However, if you want to show off some wrist jewellery, or a watch the first one would be better.
I agree with you, that if you want to give the appearance of shorter arms, a slightly longer sleeve is preferable.
As for acceptable sleeve lengths, it's really hard to say, since it's all about what kind of look the wearer wants to have, and blazers/jackets start to come into play as well. Personally, I don't see a difference between smarter and more casual shirts (unless the casual shirt is short sleeved, of course). But if the sleeve is so short it feels restrictive, it's too short.