re: When I type in “Peoria, AZ” I get some AZ agents but also Houston, TX, Durham, NC and Toronto Canada agents.
That’s because the two letters are being dropped by the database. Most databased drop “short words”. The limit, generally is, three to four characters. The results you see would be for only entries which contains “Peoria”.
Well, there’s another two reasons… each word is searched separately so the results would be representative of entries which contain “Peoria” OR “AZ” (assuming AZ not being dropped). It can not be treated as a single word because the values are stored in separate fields in the database so each word is search for in each field separately. So, the search is actually fairly complex “erring” on the side of a wide results instead a narrowly focused.
re: Is there a way to make the search feature work better?
Yes. First, you can limit the fields that are searched on the Connections : Setting admin page under the Search tab. Second, you can try disabling the Keyword Search option.
Another option, try enabling the locality, region and postal code Permalink options. This will allow you users to filter by those. The related portions of the address will be comes links and when those links are clicked on the results will be filtered by what was clicked.
Lastly, a custom search option could be developed.
Hope that helps!