It's 6.5 hours to Bogota, where you can stop over for a day or two and look around, then 2 hours on to Cartagena, which has beaches (and some nice trips to the islands), and the historic walled city.
Get an Airbnb in Bocagrande if you want to be more independent, or a boutique hotel in the walled city. It is very touristy, and the walled city does get very lively at night (lots of rooftop bars), but there's so much to see, especially if you haven't been before. June is probably not high season in the Caribbean (hot, humid, hurricane season further north, so lots of rain).
There are other destinations on the coast, as well as San Andres and Providencia, but from what you're saying they'd be too boring.
Otherwise, sticking pins in a map, Mancora in northern Peru is supposed to be nice (a friend stayed there for a few months, so I could get some recommendations), and you would have lots of opportunity to see archeology sites. 4.5 hours to Lima, again, worth stopping over for a day or so, then 1.5 hours to Mancora. Ecuador has fantastic beaches, but with the security situation there I wouldn't recommend it.
Closer to home, Encarnacion in Paraguay has river beaches, temperatures currently low 20s but once the polar air has gone away they will be having 30 degree days again. It's close, so you can be spontaneous and go once you see a good weather forecast. There are things to see, reducciones, the observatory, and all manner of waterfalls and rivers but they're a bit inaccessible. Iguazu isn't close by, but worth making an effort to see.