Hi,
I think the misconception here are two different visibilities:
1) visible in the project list (browse-> projects)
This is controlled by the state and hidden projects are only visible for the owner and administrators
2) visibility in the frontend
hidden projects are never visible in the frontend
if you want a project to be visible in the frontend only for certain users you need to remove the 'Read' access right for all others.
Björn