Do you have kids? Are there a la carte restaurants - more than one? Does the hotel have activities available? Does it have different bars and different pools?
I think a bit of structure can help, with variety carefully built in. For example, booking an a la carte restaurant in the evening, going back to the room beforehand getting dressed in something nice, do your hair and makeup - pop to one of the bars and have a drink before and a cocktail afterwards. Similar to a "date night" at home.
Check out different restaurants at lunch, try and do a different one every day. If you eat at the buffet don't just have a bit of everything try and make a "meal": Monday is fish and chips, Tuesday a burger, Wednesday a pasta.
Try and structure your day - if the hotel has a gym, go there in the morning. Then shower and breakfast. Then read by the pool. Have a juice from a juice bar at around 11am, or a coconut drink. Read a bit more, swim or just people watch and chat. Then head to lunch. After lunch to to the beach, if they have things like kayaks, paddleboards, windsurfing etc do one per day. Have an ice cream from the ice cream parlour. Have specific time to go on your phone so you're not just scrolling all day.
Do they offer yoga, cocktail classes, wine tasting, cooking lessons etc in the hotel? Do these! Again, one per day so it doesn't feel repetitive.
Make holiday friends and go to dinner or drinks together. Play cards, scrabble, laugh.
Do they have British TV channels or netflix? Or even a Mexican channel with English-speaking shows on it? Once your back in the evening watch a film and then have an early-ish bed so you're up in time for the gym. Make the most of the jetlag or just fight it, don't nap and you'll be fine in a day or two.
Do they have room service? Order room service for one breakfast and one dinner. Have a spa? Book a massage one day.
Do they let you visit a sister hotel? If yes, do it one day - another chance for a change of scenery.
Do they have a sundown dj on the beach? Go there one evening to watch sunset and have a dance.