Not with GQL, but you can do this using the Search API, though this means you need to separately index your entities as searchable documents and is much more expensive as well ($0.06/100k for a datastore query versus $0.6/10k for a complex search query, which all geopoint search queries are).
EDIT TO ANSWER QUESTION IN THE COMMENT:
It seems to me like the example does solve your problem:
"distance(survey_marker, geopoint(35.2, 40.5)) < 100"
Replace the 100
with 500
and the coordinates in geopoint(35.2, 40.5)
with the coordinates of the center of your circle, and survey_marker
with the name of your indexed GeoPt property.
So if you indexed your documents like this:
from google.appengine.api import search
query = #something
index = search.Index(name="myIndex")
for entity in query:
my_document = search.Document(
doc_id = entity.key,
fields=[
search.GeoField(name='location', value=search.GeoPoint(entity.point))
])
index.put(document)
You would write your query like so:
coords = (lat, long)
query_string = "distance(location, geopoint(%s, %s)) < 500" % (lat, long)
index.search(query.string)
Hope this helps.