Well, OP mentions he cannot install software on the machine, so I think that already blocks anything depending on lsp.
My experience is mostly from doing linux kernel programming on remote baremetal machines. I use ccls + eglot locally and have fiddled a lot with tramp, which is really good when it does work, but also tends to trip over bad connections.
I’ve also wrote all sorts of elisp hacks to be able to access the remote machine via tramp but have all code navigation commands apply to a local repository replica where the lsp server runs. My use case was similar to OP but the machines were not x86_64, so there wasn’t even any lsp ported.
So yeah, my gut feeling having dealt with similar issues is that it’s not worth it, YMMV.
Oh and lsp-mode is super opinionated, it does a million things you don’t want or need, so I wouldn’t recommend that.