Пока писал пост пришла еще одна идея - может быть она более жизнеспособная?
1. При успешной авторизации средствами JS записывать токен в cookie #1.
2. При открытии какой-либо иной страницы сайта выполнять код JS (из примера Firebase) для проверки статуса авторизации и результат токена записывать в cookie #2.
3. Из скрипта php сопоставлять эти два токена и если они совпадают, подгружать нужную страницу из php.
Правда, в этом решение также для меня не очевидно, как правильно реализовать сопоставление этих двух токенов, чтобы их нельзя было подложить. Т.е. пользователь запишет произвольные значения в куку #1, запишет аналогичное значение в куку #2, а скрипт php просто сопоставит их, даже не заподозрив подвоха.