Reinstalling Nvidia and Intel USB hub drivers did not solve the problem since they were already up to date for me. Simply reinstalling them made no difference.
What made things a bit better for me is to go to Device Manager -> USB controllers and find all the "Generic USB Hub devices"
For each of those devices, you want to check and see that on their "Details" page they have the hardware ID as VID = 045E (Microsoft) and PID =0901, 0902, etc... to make sure they are one of the USB hub ports on the Surface Dock.
For each of these devices, I went to their Power Management tab and unchecked the box that says "Allow the computer to turn off this device to save power".
This seems to help because now I have fewer disconnections, but doesn't solve the problem entirely. I might have missed a root device or something else.
The reason I'm looking in this area is because I noticed that the times when I'm seeing USB disconnecting seems to be when my Surface device is really stressed on performance, mostly when playing some games that has the CPU and GPU running near their limits, fan's going full blast and the computer's still getting warmer. It seems like when the system is thermal throttling, it decides to turn off power to the USB devices and disconnect your keyboard and mouse because as a side effect? What the hell.
From this observation, I don't think spending money to buying a Surface Dock 2 would actually solve the problem if my suspicion is right -- this is a software configuration issue, not a hardware defect. Windows device drivers are being overly aggressive in trying to manage power and turned off devices that is detrimental to the user's experience.