If anything, it sounds like VAD could cause such a problem. But please be more specific:
- A call from your extension to a T-Mobile customer, leaving a voicemail, call drops after 20 seconds of recording?
- A call from your extension to retrieve your T-Mo voicemail, call drops after 20 seconds of playback?
- A call from a T-Mo customer into your PBX, goes to voicemail, call drops after 20 seconds of recording?
- 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?