Elton, em questão de barramento, não se tem grandes derivações não né!?
Eu já implementei um barramento com derivações muito longas que para pouco dados transmitidos funcionava ok!, mas quando liguei todos os módulos e comecei a transmitir grande volume de dados não funcionou! Por fim, modifiquei a topologia de ligação.
Outra coisa, pelo que vc vem postando receio que não esteja fazendo isso, mas não custa perguntar... O Pino RS do transceiver (MCP 2551) está conectado ao GND, pois se tiver alguma resistência isso limita (via hardware) a frequencia máxima de transmissão no barramento.
E em questão de hardware o que o sistema que eu utilizo difere do seu é que o uC que eu utilizo (18F248) tem controlador CAN integrado (MCP 2515), e tal como o microeletronica citou o fato de utilizar o controlador externo o barramento poderia ser limitado pela velocidade da SPI.
No mais é isso aí...
E vai dando feedback a medida que o sistema ir funcionando...