LSP maybe portable with it’s config if the LSP themselves are independent. Checkout Mason which seems to make it easier to bundle neovim and “portable” LSP. There was another project similar to Mason with some more features, but I forgot it’s name. So search around to see if that fits your requirements.
That makes sense. Which-key doesn’t allow the timeout to take place after gc since it knows about gcc. While that functionality is useful when you don’t know which key to press next, in situations like these it would create problems. I think your best solution would still be to modify the mappings. Maybe remap gc to gcl (comment last) or something like that.