As a test I deployed the app to DigitalOcean and the issue was immediately resolved. So my conclusion is that the issues were a result of fly.io network issues. Once I remembered about the trouble I had installing the fly CLI tool I began to suspect this was the case.