между "Puma отображает страничку за 30 мс, передает ее в nginx" и "Nginx отдает ее в браузер за 300 мс." есть ещё "Puma занята передачей странички в nginx". я бы добавил в nginx логирование времени выполнения запроса на backend и плясал дальше от этой информации.
https://docs.nginx.com/nginx/admin-guide/monitorin...