So this happened last week and I thought I fixed it with a fuel flyer last week.

So here's the problem:
I put it in the water this morning, ran about 20 minutes then pulled up and parked at the pier for about 2 hours. We got in after lunch going to ride, pulled tubes for about 30 min or so and anchored up to some friends to swim. Boat was off as we swam for about an hour. We got back in the surf and it turns over fine but will not crank at all. It has a brand new fuel filter in it. It would eventually crank after about 10 min but sounded awful and wouldn't go into gear. It doesn't even idle smooth. But idles less when I put it into gear(I wouldn't really call it idling-sounds really rough). I opened the gas to see if it was vapor lock and that wasn't it. AND HERES THE KICKER.... Once I was towed back to dock and got a ride to go around a get my trailer, when I got back to trailer it, it cranks fine and trailered with no problem. This is the exact thing that happened last weekend but I thought I fixed it with the fuel filter. Apparently not. Please Help! I'd hate to take it to the dealer and not have it for a few weeks at the least b/c they can't get to it.

Things I've tried:
New fuel filter
Opened gas to see if it's vapor lock
Took the fuel like off filter and see if it pulling which it is.
I've run sea-foam, sta-bil marine.
Chevron gas, same that's in my truck.