Fiiiinally discovered what the issue was.
As it turns out, to set the maximum width/height of a callout, one should set the properties in the CalloutStyle instance returned from
Callout.getStyle();
Calling Callout.setMaxHeight() or Callout.setMaxWidth() has no effect. Setting maxHeight or maxWidth in the <calloutViewStyle> style also has no effect.