The linked sources refer to the on-disk format. The format of ext2 is designed to be highly extensible (perhaps the clue is in the name? :).
I think I read the ext4 code can still mount ext3 and maybe ext2. Even if that doesn't work now, it's how they were developed and it supports transitions like easily upgrading filesystems. The format has flags, inode flags, space for more flags, flags which don't stop you mounting the filesystem if you don't understand them, and flags which stop you mounting with write access if you don't understand them.
http://www.nongnu.org/ext2-doc/ext2.html#S-FEATURE-COMPAT
So it's natural to allow larger inodes as well, to support the implementation of new features.
E.g. xattrs can be stored in-line with larger inodes (maybe only in ext3). They're also used for "nanosecond timestamps or inode versioning" in ext4:
http://kernelnewbies.org/Ext4#head-c212d1622081e592caa73b9e14511cee45fb989b