Sayulita, although not as perfectly "desert island-ish" as Las Animas and Yelapa, was my favourite beach. It is an hour on the bus from Puerto Vallarta. The small town is bright and full of character (much more a true Mexico than the resorts of PV). It really has a vibe of the Caribbean and the surf culture makes it a great place to spend the day. The beach is not as crowded as some others and it is great to walk along the sand, has a beautiful sunset. Only a handful of small hotels prevent the overcrowding seen in PV. There are cheap hostels further in the town, as well as camping under the palm trees. The area is a considerable lot cheaper to eat at.
The last bus leaves at 6:25, and be careful of the time change from crossing out of Jalisco (it is an hour later).