By the jones act ships cannot go US port to US port. so all ships plan to unload once. this can work aroud that by letting a ship unload some in Seattle and then send San Diego from Mexico via train (or whatever variation makes sense)
That's not quite right. Boats can't pick up cargos in one US port and move them to another. They can drop in multiple places but it is usually uneconomic.
They can. However if the goal is the center of the US ports in Mexico may be closer (remember mountains cause are expensive to cross and so a straight line on a map may not be the best route). I'm not in logistics so I can't tell you all the considerations used to decide if they should stop in any particular port or not.
Right now the main thing controlling where the ships land is where they have ports that can receive their massive tonnage; places like Long Beach (16,618 TEU) or Houston (3,974 TEU). It's quite arguable that additional ports need to be built so that the ships can disperse cargo closer (or even farther, but more efficiently) to where it is going.
By ship is still by far the cheapest way of transporting cargo, and the proposed route would involve the shortest land distances.
More importantly the Sierra Madre ranges are large geographic barriers throughout most of Mexico but are relatively flat in the area of the Chivela pass, where this rail line is.