I thought it was a limitation of Ecto where the schema prefix will be the same for everything in the same query, so you can’t get assocs from another prefix. In general queries across pg schemas did/do not work well in Ecto 3. I worked around the problem and changed the design of my system. This was 2 years ago.
Would urge consideration if you could do the same. If not, and if you are desperate, you could make a VIEW that selects from the schema
i.e.
CREATE TABLE other_schema.jobs
CREATE VIEW current_schema.jobs AS SELECT * from other_schema.jobs
CREATE TABLE current_schema.tasks
It is dirty but for the purpose of Ecto preloads it will probably work.