Try to use your browser inspection tool to understand what is the difference between the requests from Cloud Run server before and after refreshing on the page. Increase ‘–logger.level’ could help to debug the requests in the server side. My actual guess would be that there is a server configuration problem, because you can connect to the server without using /subpage, so there is a huge chance that is not GCP network configuration problem. For the same reason I think that is not docker container configuration problem (but I could be wrong).
I had the same problem to access my app, but my problem affected all the pages when using Github Codespaces to develop the code. I would recommend to try the solution of this topic, maybe would resolve.
The starting script
streamlit run <file>.py --server.enableCORS false --server.enableXsrfProtection false