Oi Adriano,
Infelizmente agora não posso fazer a revisão do seu código... Estou muito corrido esse mês.
Mas respondendo sua dúvida: "à medida que você for digitando, fazer uma busca no servidor e ele já retornar os registros filtrados."
Na página 163 eu mostro como fazer um filtro personalizado para o AutoCompleteTextView utilizando a classe MeuFiltro.
O método performFiltering é o local onde a filtragem deve ser realizada. Então, nesse momento você deve fazer a requisição para o seu webservice de modo que ele retorne as informações que você deseja. Perceba que o parâmetro desse método é um CharSequence que representa o texto digitado no AutoCompleteTextView. Note que esse método retorna uma instância de FilterResults, que na sua propriedade values deve receber a sua lista (carregada do servidor).
Os dados são enviados para serem exibidos no "drop down" do AutoCompleteTextView no método publishResults.
Ficou mais claro? Qualquer dúvida, me fala.