Trump needs to carry through with his threat to close the Mexican border. Once the big money on the Mexican side of the border starts loosing income because they can't get their cargoes moved into the US, the Mexican government will suddenly find the will to act.
They will then quickly disperse the migrants and send them back to their countries.