We don't need to help Mexico, and we should not. We should withdraw all of our personnel, warn any Americans dumb enough to enter an active war zone that they are on their own, and set up the necessary forces on the border to keep the mess on the proper side.
On the home front, we could handle our involvement with two simple tasks. Legalize drugs and heavily audit the money flowing into Mexico from the US. Investigate who is sending what to whom, along with the legality of the sending party. I'm all for banking secrecy inside the US. I'd prefer international banking secrecy as well, but it is a Constitutionally permissible activity to audit money, persons, items, etc traveling into or out of the US.
Get this straight. There is no "good guy" in this war. Every single aspect of Mexico is corrupt. From the lowest police recruit through el Presidente himself. All of the cartels are ipso facto criminal enterprises. The people of Mexico seem to have no inclination of resolving the problem. If the people revolted against their government and the cartels, I'd argue for airdropping metric tons of weapons to them. But they are not. My counterinsurgency instructor beat one phrase into my skull. "If the people do not rise up and take freedom for themselves, they neither deserve it nor will they keep it." You can't hand people freedom. They need to take it. You can help someone in that process, but you should never do the job for them. It will not work.