I have to clarify a few things here:
That Picard ads empty IPLS or TIPL and TMCL frames is IMHO a bug, and I will add corresponding bug reports once I have looked into it a bit deeper. It is just an extra empty frame, so a very minor bug of “wasting” a few bytes in some cases. This is the original issue discussed here.
Of course Picard adheres to the version setting. You can change whether Picard saves an id3 v2.3 or v2.4 tag structure to your files. A lot of effort was put into Picard writing the tags in a way that is compatible with existing soft- and hardware. The way you put it it sounds like Picard will break your tags and make them incompatible, which is definitely not the case. If it is breaking anything in some software this would be a bug worth investigating.
If you are referring to Picard writing TSOP (and some other v2.4 frames) to v2.3 headers, yes, this is an intentional violation of the standard. One that makes tagged files more compatible with existing software. In the bug report I linked there was discussion of adding an option to turn this off, but it was never implemented. Probably because disabling this would effectively make the files less compatible and so far I haven’t heard about any issue that change was causing in other software.
Yes, please don’t mix this up. We are talking solely about ID3 tags here and MP4 uses a different tagging format.
I refer to the software, the iTunes music player. It can both read and write tags. And it used to be very popular (and AFAIK still is) and influential. Its use of tags had a big influence how other hard- and software started to use and interpret ID3 tags.
Now this is interesting and new to the discussion: Please let us know what issues those are! As I said before, if the files tagged with Picard cause you any trouble in other software we would like to hear about that and investigate it.