American has matched with lots of more dates from $60 one way in NYC, and from $40 in MIA, can even go tonight flight from JFK, so no advance purchase needed. See matrix for lots of dates.
JFK - SJU Nonstop
May 18-24, 28-31
Unfortunately for the return there are not that many dates available, and what is available would be with a longish stop in CLT.
MIA - SJU Nonstop
May 18-20
Also no availability at that price for the return, but you can always look into Avios.