Riker was XO on three ships before taking his own command, so Sisko's service on two ships as XO makes sense. As for the Saratoga being a step "down" from his previous service on the Okinawa, well, we don't know what class the Okinawa was, and there's no reason to think that a Miranda-class vessel is less prestigious than an Excelsior-class.
According to Memory beta, Riker was only the XO on one ship before the Enterprise, but I DO very distinctly remember one other being mentioned in series.
Either way, we do know Riker, like Sisko, was the Chief Engineer of the Hood (at least that was very heavily implied) before he moved onto XO.
Riker was definitely DeSoto's XO on the Hood
but you must have forgotten that he was also the XO of the Enterprise
-E. When I said ships, I meant ships, not crews.
As for Sisko, we don't know that he was ever a Chief Engineer, nor do we know what Riker did as a lieutenant to justify wearing gold.