I think that’s a result of Discourse’s “thumbnailing” process. If you click on the upper image, you will see the “full size” version, which is 520px high.
The horizontal image is 260 pixels taller than the vertical image.
What isn’t glaringly obvious in the documentation is that the PNG format uses a byte to signify “start a new row of pixels”.
Yet even so, 359 - 260 still leaves 99 bytes unaccounted for. TBH, I don’t know what those bytes are specifically used for. But unless you have some kind of transparent border not displaying that would explain them, I am sure they must be for some instructions that are needed to produce the image.
In any case, I wouldn’t worry much about a few bytes here and there, that would be what I consider to be “over optimizing”. IMHO, try both horizontal and vertical. If one is easier to work with / causes less problems, then use that image. Go after the “heavy weights” that could be slow-down bottlenecks first and worry about the “light weights” when they seem to be a problem.