Sorry to hear about the slow responses of hotel. We have a wedding venue in Puerto Vallarta and we either ask our clients to deposit to our bank in USA before arrival (except gratuity) and they pay either cash, credit card or they can pay us with a travelers check for the difference. Personal checks will not work I do not think. At least here we do not accept them.
Cash is fine as well depending on how much is owed though I would think about that twice and if you do just take the cash. If you are paying the hotel directly you could also of course use your credit card or debit card. Bring some cash for miscelleneous use... about 1,000. You need cash in Mexico for emergencies.
That is all I can think of but I hope it helps. Have fun and rest assured, it will all work out:) It always does....