To close the loop on the post, the issue ended up being a network problem.
This was deduced by looking at the network tab in Chrome dev tools. Retool loads 60-100 small chunks of JS and CSS on app load. These chunks are usually served from cache, and take <20ms to load. In this example, when not served from cache, some chunks were taking 30-60s to load. Most of this time was spent in the "queueing" or "stalled" state, which is indicative of a network stack issue.
Feel free to reach out to performance@retool.com with any performance related issues.