Can't you really make a frame fit one size bigger?
I have always found the trouble of being 5'9" with a cycling inseam of 34". I always end up on a 54cm frame for reach but have tons of seatpost showing and a stack of spacers on the headtube and still have a pretty big saddle to bar drop.
I am going to try out a 56cm tarmac frame because the difference in top tube length is only 1.8cm. When you look on a tape measure that really isn't that much. Seems like you could fix it with a shorter stem and I would be more comfortable on the bike.