The problem is that cities have multiple names. For example in Minneapolis, Golden Valley is a suburb but people swap the names to suit their needs. So even though Golden Valley is a subset, the simple radius search can still be "honest" while appearing to stretch the radius. And don't even get my started on jobs that are 90% travel!
Would you say that requiring an actual physical address for each job on the site is feasible?