What needs to happen is for passenger interests to be given weight. One way to do that might be to have the cities offer some short-term licenses for single shifts on a spot market, and some long-term (maybe quarterly or yearly) licenses with a fee inversely related to the driver's score over the last period (determined by average rating by his fares, and/or relative average tip amount for the route).
Applicants for long-term licenses with good ratings and relatively high tips for their routes for the previous period would get cheap licenses, those with poor scores would get more expensive licenses, and those without a track record or filed for the benefit of non-drivers would get exorbitant fees.
This would have the secondary benefit for municipalities of drivers being incentivized to declare their tips.