Maybe not many people run into these issues because schemas and functions aren't used as often in combination?
I think schema and functions are common combinations. But when people have objects with the same name, then they are careful to be sure, so objects have really identical structure.
Using different types in these objects is very rare. And because Postgres doesn't support it well, experienced developers don't use it. Similar issues can do some issues after an stored procedures update, because can require session reset. Or when you need it, you can use a much more dynamic type like record.