The only difference between a StringProperty and a TextProperty is the
length limit, and the fact that the latter one is not indexed. If
you're not concerned about the indexing overhead of your existing
records, you can simply change the Model definition; new records will
be unindexed, while old records will remain (unused) in the index
until next time you update them.
If it's important to eliminate the wasted index space, you can simply
fetch and re-put each entity in your datastore.
-Nick Johnson