Where is your cruise leaving from - Antigua or Puerta Rico?
I guess the Antigua to Puerta Rico leg is with American Airlines.
Are you flying from London to Antigua first with BA? If so you could just change your booking and fly direct to Puerta Rico as they have a daily flight.
p.s. Did they say why your flight dates have been changed?