There are also activities that you can take him to - Wake Up With Disney Junior is a dance party early in the morning on (most?) sea days, there is Toddler Time every day on all the cruises I've been on, where a cruise staff member brings out toys and things for the toddlers to play with, at that age my son LOVED the shows and would cry each time one finished as he wanted to see them again, the Club has Open House every day, including some with character activities so he can interact with the characters, etc.
The Magic (and I'm assuming the others) now have a toddler play area where they can have fun while you sit and talk (on the Magic it's in the Promenade Lounge, so you can buy a drink, partake in trivia, etc while you're there).
My kids always loved the live music at that age, and would dance to the bands. Especially in the Promenade Lounge or atrium before emails.
I'm not sure what they do for Christmas, but I'm sure there will be activities for that he can participate in too.
Just make sure you pre-book any nursery time you want. We book the nursery for any adult activities first - eg Palo, spa, etc., then after that we book a few dinner times. Eg if our dinner seating is at 5:45 then we book nursery for 6:45/7:00-ish for an hour. That allows him to eat, then one of us would run him up there so we can eat the rest of the meal in peace without him running around or wanting to go. That hour at dinner gives him his appetiser, entree, and dessert. We can then pick him up for the show.