Short Sleeves or Shirt Sleeves
Solution 1:
There is a difference in the meanings; to be "in shirt sleeves" means that your shirt sleeves (long or short) are exposed - so you're not wearing a jacket, jumper or coat over the top (apart from a waistcoat of course). Like you, I've heard one or two people confuse the terms, but according to the Cambridge dictionary, among others, being in shirt sleeves does not imply short sleeves.
Solution 2:
Both terms are correct usage, but they have different meanings.
Short-sleeve(d) shirts are, as you would guess, shirts with short sleeves. To wear short sleeves is to wear a short-sleeved shirt.
To dress in shirtsleeves, on the other hand, means to wear no layer over your shirt - no jacket, coat, etc. "Shirtsleeve weather" would, by this logic, be weather that's warm enough not to necessitate layers.
The word "shirtsleeves" also has a general connotation of informality - particularly in older novels, seeing someone "in just his shirtsleeves" implies that he wasn't fully/properly dressed.