Makefile complexity always grows to the point where no one person understands them anymore. Past that, actually
Your suggestion makes sense given the way that Arduino libraries are currently constructed, but that is a relatively recent structure. Go back a few versions and it was common for "official" arduino libraries to be off in .../hardware/... and user-installed libraries to be in "unspecified" locations all over the disk. Including a full path to each include file is maximally flexible, and the verbosity of the resulting gcc command isn't really relevant.