It certainly would be nice if this could be automatically detected. I have my computer zoomed to 125%, so my screenshots are always shown too large by default as well.
That depends on how you store the screenshot. If you save the screenshot to Files, it saves as PNG, and keeps its resolution information. If you save the screenshot to Photos and then upload from there, it loses its resolution information. (I think it’s saving the image as HEIF and then transcoding to PNG or something.)
Sure, and if our users are anything to go by the latter is the far more common of the two. Screenshots are only saved to files if you interrupting their capture and manually redirect them.
I think it would also be possible to use some heuristics to detect iPhone screenshots. (PNGs from an Apple device that are the exact dimensions of an iPhone screen…)