Several people have wondered this same thing before, and have done plenty of research on the topic. Below I've compiled a couple of the more popular ideas on the passage of time in the One Piece universe.
There was a similar question asked on Reddit:
How much time has passed in the One Piece world?
To which Redditor /u/jaydoubleyoutee responded:
Time in the East Blue is close to impossible to map out.
Grand Line is a bit easier though. Loguetown, Reverse Mountain, and Whiskey Peak are the same day. They leave Whiskey Peak the 2nd day. Then several days pass when they reach Little Garden so I'm guessing it's been a week now. They are attacked by Wapol on the 8th day and reach Drum on the 9th. Four days pass and they meet Mr. 2. Five days til they get to Alabasta. The war breaks out two days later. Luffy sleeps for 3 days. They leave the next day, then get to Jaya the same day. They get to Skypiea the next morning and defeat Enel the day after that. So it's been like a month at this point.
Then they reach Longring Longland and stay for four days. Three days later they reach Water 7. The next day is the Aqua Laguna. That night they raid Enies Lobby up until the next day. Luffy rests for two days when Garp shows up. Sunny is built in three days and they leave. Several days later, they reach Thriller Bark. They defeat Moriah at sunrise the next day. They sleep for one whole day when Brook joins. They leave two days later. So all this is between three and four weeks.
Several more days pass when they arrive at Sabaody. Luffy is sent flying by Kuma and reaches Amazon Lily the next day. He wakes up from the mushroom after a day and befriends Hancock. Five days later they reach Impel Down. The next day is the war. Two weeks pass when Luffy wakes up at Marineford. So about a month has passed since they left Thriller Bark when Luffy decides to train for 2 years.
Post-timeskip, it's only been three days. They reach Fishman Island and stay for a day. They leave and go to Punk Hazard. The third day is now on Dressrosa.
A comment, coincidentally by the same Redditor, on this question explains the 3 days post-timeskip:
Day 1: Straw Hats arrive at Sabaody. Go to Fishman Island. Beat Hody and challenge Big Mom. Tea Party in 4 days. Will take Pekoms and Tamago 3 days to get there.
Day 2: Camie asks for the day off, so it can't be Day 1 since she had that day off too. Straw Hats leave Fishman Island and make an alliance with Law on Punk Hazard.
Day 3: Law says on Day 2 that the paper in the morning will have Doflamingo's resignation. They reach Dressrosa that day. Pekoms and Tamago are still on their voyage to Big Mom.
Another way that people have tried to pinpoint the amount of time is the moon cycles that Oda depicts during night time scenes in the manga. Here is an excerpt from the One Piece Wikia on this matter:
In One Piece, Oda has depicted the moon several times, it has been discovered the moon's phases progress with the storyline's own timeline and therefore it can be used as a judge for the number of days that have passed on their journey. However from the first sighting in the Syrup Village Arc (waxing crescent) to the start of the Amazon Lily arc (waning crescent) would work out to be only 21 days by this guide. Although due to certain conditions on one of the phases seen, it could be as much as 42 days.
One point to be made is that we know the characters have only aged 2 years, the length of the timeskip. So the time spent pre-timeskip is definitely less than a year. Based off the information I've shared above, it's more likely to be just a couple months.
It definitely feels very strange when you consider how long we've been watching their journey, and I think Oda sensee agrees since he made this joke in SBS Volume 24:
Q: It takes while for time to pass in manga, doesn't it? Since it's a weekly thing. So, should we wait like 2 more years for Luffy's birthday?
A: No, no, no. He has a birthday every year, just like everyone else. It's just that, in Luffy's case, every year is his 17th birthday. Doesn't that make you jealous?