I totally get your concerns. We have kids about the same age. There are a few options that could help.
1) Contact the cell provider and discuss a global coverage plan and the data roaming charges. Be informed. It is never cheap, but it can be made less expensive if you buy a package from your carrier.
2) I'm on Verizon and was able to pay $10 per day while in port for global data roaming. The data use would be taken off my domestic data plan for the $10 fee. That also includes talk and text, but I'm guessing that data use is the real concern.
3) You can buy the WiFi package on the ship, but be very wary of how fast data is used. Before buying the plan, get help on configuring the phone to use less data when connected. I turned off the automatic backup feature for pictures while on board, turned off email auto-sync and turned off the feature that automatically downloads attachments in e-mail when connected to WiFi. Phones assume that when you are connected to WiFi, bandwidth is good and it's free. Automatic updates to apps should also be turned off. I even deleted by social media apps. I used the Facebook web site when I wanted to check in, which uses less data than the app, because the app automatically downloads images and posts and the web site only loads what you are looking at.
4) Be mindful that streaming videos like Facebook Live are going to use a lot of data as compared to an instragram or snapchat image.
5) Battery life may be diminished, depending on how the phone is used. Have one of those external batteries handy for charging.
Cell phones are complicated computer devices so managing costs while on vacation is something you should really take the time to look into. What works for one person won't always work for another. It depends on the carrier, the type and age of the device (Android vs. iOS), the apps on the device and how the device is to be used. There are ways to make this work, but there will be a cost. The cost can be managed, but it requires conscious and attentive use.