I missed this part.
glib documentation must be built with gtk-doc which in turn depends on glib,so we need to define glib-minimal which does not depend on gtk-doc.
In this case the way I have seen other distros do it is by having a *-bootstrap package (same as the *-minimal that you mention), which doesn't sound like a bad approach.
What about 'hiding' the normal glib package
Maybe the *-bootstrap package can be hidden. Then the normal glib package can have its "doc" back?