Two messages per second?!
What, did they write the software in interpreted COBOL? 500Kbits/sec is slow. Really slow. A good controller should be able to keep up with the maximum message rate.
CAN bus is used because of its robust signalling. If you have a resistor anywhere on the bus, even the wrong value in the middle with all lines as stubs, it will probably work. Almost all transceivers are acceptably good. The ones with integrated isolators have a bit of a bad reputation, and even those only very occasionally drop a bit. If you have two nodes communicating, look elsewhere for the problem.