The young American was picked up by another cruise ship on Jan. 8, after he his cries for help were heard by a guest aboard the passing Disney Magic.
Scott Campbell told ABC News that he notified the crew after he and his daughter heard the man screaming in the water around 6:30 a.m. while they sat on the balcony of their room.
Another Disney Magic passenger, David Hearn, captured the rescue on video.
He said the man in distress sometimes disappeared behind large waves, but was eventually able to swim toward a lifeboat. Media reports say he may have been in the water for up to five hours.
A Royal Caribbean blog identified the man who went overboard from the massive Oasis of the Seas cruise ship as Frank Jade, but gave no hometown.
The Florida-based cruise line said he was reported in stable condition without serious injuries after being taken to a medical clinic in Punta Langsota, Mexico before being flown to the United States.
The man reportedly doesn't remember how he ended up in the water.