Я хочу закэшировать на 50 минут.
Неправильно. Не ты определяешь это время. Если это JWT-токет то ты можешь просмотреть его тело. Парсеры есть. Там внутри будет указано точное время когда он сдохнет. Обычно за несколько минут до смерти ты снова дёргаешь сервер токенов и просишь новый токен.
С guava cache я не работал. Но это не имеет значения. Основной flow не меняется. Хранить его в базе тыщу лет или убивать сразу - дело хозяйское. Для протокола не имеет значения что ты делаешь со старыми трупами токенов. Тут главное новый получить.