It might be interesting to have a union that functions sort of like a cooperative consulting/contracting company with an exclusive contract: the employer pays the union, but the union itself performs hiring, firing, performance evaluations, etc. such that it's beneficial to the union itself to drop freeloaders.
Obviously there'd be a lot of complicated details to work out so the employer can't actually treat the union like it would a regular contracting company (e.g. a tool to keep its responsibilities to labor at even greater length, and fire with even less care).