The 30-year-old won the third-round encounter 6-1 5-7 7-6 6-3 in a match that ended at past 1am local time on Sunday.
Simon struggled with his hamstrings for much of the contest, but that did not stop the 27-year-old from making sure that Fish did not have it easy.
Fish was up a set and a break, but Simon made a comeback and won the second set 7-5.
Fish got himself involved in a dispute with chair umpire Carlos Ramos over the way a line call was handled, but recovered his cool to win the third and the fourth sets.
This will be Fish's third successive appearance in the round of 16 at Flushing Meadows, and he will now be hoping to make the quarter-finals for only the second time in his career by defeating Roger Federer.