Figure I'd chime in. Not really with much new.

FedEx can solve many problems. I've used them to deploy and maintain 22K remote, sometimes-connected, systems. We purchased 10% spares just to handle failures due to heat and vibration. Initially, the connections were over a packet network, no IP, so pushing data wasn't possible. Even after deploying private-networking to the 1000+ locations, patching was a pain.

For 300, you just need a few spares to send out first which can be swapped by a local, generic, IT person, assuming a video showing how to replace the whole system for onsite person isn't possible.

BTW, if the systems aren't networked at all, then there really aren't any added risks by not patching. I'd wait until there was a failure to swap them out or do it slowly, say 30 in a month, so any issues get the hands-on help needed. Plus, the field people will happily help each other out, so if you start with 10 locations and get their feedback, the process can be improved with each step.

Back at the main location, I'd have an image that was maintained by a devops tool like Ansible and definitely using containers will make life easier.

In theory, snaps would be good, but there appears to be more overhead with those and people are still running into problems with some that aren't 100% self-contained. Honestly, I'd wait at least a few more months before using 18.04 unless you are absolutely positive all is well. There are still enough issues being reported that it concerns me.

But we are fair away from the problem and only you know the best solution. Nothing has humbled me more than the unexpected situations that come up in the field.