The one thing missing in this description is requirements for and/or support of networking.
I've wrestled with stuff like this. I agree with all folk suggesting VNC, RDP and the like. If these can meet the need, then I bet the end experience will be better. Cheap KVM switches suck.
But, there's one simple thing that can render this unsuitable: VPN requirements. Several VPN clients are designed to shut off all other networking while initiating the VPN session. This will kill all these solutions that depend on local networking. So if one or more of his machines are essentially used to access separate VPNs, he really may be stuck with KVM-like solutions.
If this is the case, there may be one other solution. I was very pleased when my company switched VPN clients and I could finally have concurrent networking. I ditched my KVM switch. Now they're switching VPN clients again and supposedly the laptop will be locked down again. The solution here is to switch to a VM on said laptop and run the VPN client from within the VM. Now that we're going VM though, why even turn on the laptop? Well, if you will need to travel, you do want the laptop ready to go. So, keep the VM on the laptop. But for the OP, with just one laptop, I have to wonder if one of these desktops couldn't be folded into a VM on the second.