What if you grant Reader access to Anonymous?
You could complement the $PublicAccess route,
as you put it, by granting Reader access to Anonymous. That way you'd get
rid of the Login prompt, even when $PublicAccess is no longer present or
has a value other than "1".
To minimize potential vulnerabilities, protect any documents you do not
want Anonymous to see by adding a Readers field that contains names of,
or roles assigned to, authorized people.
EDIT: If you use a Readers field, make sure
it contains also the server name(s).