" Compared to writing an application for Windows, yeah, writing an application for Linux is really easy. All you have to do is GPL it "
Making all applications GPL'ed to get distributions to redistribute them just isn't going to fly. Lots and lots of apps that users want are never going to GPL'ed and it is not like distributions can package all GPL'ed apps either. The most commonly used ones? sure but there are hundreds of stuff that aren't in the distro repos and probably never will.
If you are already part of the core ecosystem of free software apps, the centralized repo model works for you. If you are a independent software developer, Linux model is very problematic and people who are doing it are sometimes targeting just one distro (commercial ISV market - RHEL, Steam like folks - Ubuntu) and excluding everyone else.