I live next door to Euston station, sadly. Hence 20 hour trips to the Highlands.
I think you exaggerate. Whilst it can sometimes need an overnight it's usually possible to get there in a day from London. I live further from the Highlands than London and can easily get to Inverness in a day by train, and if I had a lift from there or hitched I'd be in the mountains same day.
A train from kings cross to Inverness takes about eight hours? Then it's 2 hours to Kyle of Lochalsh. (Various mountain stops before then)
For interest I just had a look on the train line app.
If you wanted to go tomorrow morning you could get to Kyle by 8.30pm leaving latest at 9am for £200. If you were prepared to leave at 5:48 a.m. you could do it for £148.
Edit. And it appears if you took one of the two earlier trains you could also catch the bus to Ullapool that same day.
But if you did have to overnight in Inverness, I really like the Black Isle hostel not far from the station. It has good facilities and the Black Isle Brewery Bar below does great pizzas and of course excellent beer