The islands are very different. Ambergris Caye is about five times larger and has eight to ten times the population. The beaches are much better and much more extensive on Ambergris. While San Pedro is more built up than Caulker village, there are parts of Ambergris that are undeveloped ... and because so much of Caulker's development is in one small area, in some ways Ambergris Caye feels less jammed up and developed.
The advantage to Caulker on a cruise ship visit is that it's less than 45 minutes away by water taxi whereas San Pedro is about 75 minutes. Of course you could fly (US$26 one-way from municipal to either island) and be in San Pedro in 20 minutes or so.