Many banks in the United States have special programs with Mexican banks. Some large U.S. banks have discounted prices to transfer money to large Mexican banks. You can deposit your money into their accounts so that they can pick it up in person. Contact your bank to see if they offer discounted prices.
Directo a México is a program with the U.S. Federal Reserve and the Banco de México that lets people in the U.S. transfer money electronically to Mexico. Ask if your bank offers the Directo a México service.
Bank of America offers Safesend, where you can wire money to Mexico for free if you have a checking account with them. The money can usually be received that day or the next.