@JamesBenson I seem to have lost you on IRC, and as I’m about to go offline for a bit I thought I’d write this down here.
First, take the URL from the error, and see whether you can download it with wget or curl. Note that you’ll usually have to quote it so the shell doesn’t get confused by the ampersand in the query string. In your example (but AFAIK that one won’t work now because it’s too old),
wget 'https://068ed04f23.site.internapcdn.net/download-snap/99T7MUlRhtI3U0QFgl5mXXESAiSwt776_3440.snap?t=2017-11-17T00:00:00Z&h=3bada4b9cae92cb4de4c1236596c082ce43259cb'
If that doesn’t work, then there’s an issue in your networking. If it does work however, download http://people.canonical.com/~john/gowget and try using that to download the URL. All it does is download the URL you give it, but it’s written in Go so it’s the same network stack.
If that fails with an error similar to the one snapd was giving you, repeat with http://people.canonical.com/~john/gowget19 (this is the same program, built against a newer Go version).
Next step after this would be to run gowget while capturing the nework with wireshark.