The problem, which no one denies, is that the small number of possible valid e164 values leaves the scheme vulnerable. Also, last time I checked you could submit like 10k tokens at once, so using a modest amount of IP addresses and phone numbers to bypass the rate limiting it is feasible to determine every registered number in a city. Restricting this is hard because some people have huge address books.
The Silent Circle method is slightly better in my opinion, but not by much so I understand why Moxie doesn't want to bother changing it.
Back when Redphone was a separate app it used a bloom filter scheme.
There are really no good solutions to this problem. The safer ones currently know just don't scale.