CAN BUS Module based on GD32E103 firmware bugs?

I have two modules communicating but I’ve noticed that the data can become currupt and the last 2 bytes of the 8-byte message are inconsistent. I don’t think it’s the arduino code because I can fix it by reseting just the CAN BUS Module based on GD32E103 module by disonnecting ground real quick. Then the data is correct. It appears something is holding invalid data on the GD32E103 and not releasing it for some reason. I can get into this state by turning a module on/off which must currupt something. Since the firmware is closed source how can I go about addressing this?