WooHoo! Turns out the API command DOES work on the newer firmware. I made a syntax error when testing against the newer firmware. Also, be sure that requested bitrate is in the camera's allowed range or it won't work despite the OK response.
The Dahua custom bitrate amnesia problem can be worked around with a python script.
I have SecuritySpy set to run the script once a day to fix the rate on any cameras that rebooted spontaneously.
Also, I can manually trigger the script if I restart a camera.
PHP sample script is below. Add a new call sequence for each camera. Of course your camera ip for <ip> and desired bitrate for nnnn
import requests
from requests.auth import HTTPDigestAuth
#set bitrate of a camera
url = 'http://<ip>/cgi-bin/configManager.cgi?action=setConfig&Encode[0].MainFormat[0].Video.BitRate=nnnn'
requests.get(url, auth=HTTPDigestAuth('USERNAME', 'PASSWORD'))
#set bitrate of 2nd camera
url = 'http://<ip>/cgi-bin/configManager.cgi?action=setConfig&Encode[0].MainFormat[0].Video.BitRate=nnnn'
requests.get(url, auth=HTTPDigestAuth('USERNAME', 'PASSWORD'))
#set bitrate of 3rd camera
url = 'http://<ip>/cgi-bin/configManager.cgi?action=setConfig&Encode[0].MainFormat[0].Video.BitRate=nnnn'
requests.get(url, auth=HTTPDigestAuth('USERNAME', 'PASSWORD'))