VAD on FreePBX

If anything, it sounds like VAD could cause such a problem. But please be more specific:

  1. A call from your extension to a T-Mobile customer, leaving a voicemail, call drops after 20 seconds of recording?
  2. A call from your extension to retrieve your T-Mo voicemail, call drops after 20 seconds of playback?
  3. A call from a T-Mo customer into your PBX, goes to voicemail, call drops after 20 seconds of recording?
  4. A call from your T-Mo line to retrieve your FreePBX voicemail, call drops after 20 seconds of playback?

VAD at your end does not seem relevant for (1).
If (2) or (4), does speaking a word every few seconds during playback avoid the drop?
If (3), can you confirm e.g. with tcpdump that the PBX is sending valid RTP while the caller is leaving a message?

Does your PBX connect directly to Cox or do you have an SBC provided by them? What router and/or firewall do you have between the PBX and Cox?