You seem to be missing the distinction between "The Linux Kernel" and "a KitchenSinkware Distribution".
The kernel, in essence, manages the hardware it is running on. That's pretty much it. It is quite boring, and the average end-user never even knows it exists.
A KitchenSinkware distribution adds all the software bells & whistles for your every pointy-clicky delight.
Thus, your router and KitchenSinkware are two completely different distributions, serving two completely different needs. So of course they are different ... even though they both can run the same, exact Linux kernel. (Although the kernel in your router will be compiled for that specific hardware, and the one in KitchensSinkware for as many hardware types as possible, thus the size difference.)
That's why Ubuntu (and clones) have all the issues that Cupertino & Redmond based OSes have, and for all the same reasons. Trying to make one desktop OS that works for all users, everywhere, inevitably makes for a bloated, buggy code-base. You'll have better luck with a more targeted distribution ... or better, learn to build your own custom version.