I think this could be an issue of your printer not being able to print edge to edge if your dataframe is to close to the edge of the page. Since most printers have to leave margins, there are two ways for it to compensate for this, either by scaling the image down to fit its margins(what is happening here I believe), or by cutting off some of the map with white space for the margins.
Also I'm curious why you are printing straight out of Arc, I always export out to PDF then print, generally looks better to me and gives you better options for handling margin issues when printing.