Hi again,
a few things:
1. Great you can exchange messages between two CAN Bus shields, that proves your hardware and connections are working
2. Regarding the message format, it doesn't really matter at this point as you still trying to get a message, independent of the content
3. The crystal speed on the boards don't need to be the same, the important part is that the CAN Controller configuration is done correctly, taking in consideration the crystal speed.
4. What CAN Controller chip is being used on the Elevator board? MCP2515? I just wondering if the Board you're trying to communicate with is really a CAN Bus and not something else like RS-485.
5. For the CAN Speeds, there's actually an "infinite" number of options, on the Seed library they have prepared a few more than you listed:
https://github.com/Seeed-Studio/CAN_BUS_Shield. Looks like the Seed shield also uses a 16MHz crystal, so you should be fine using their library to get the right Configuration for the CAN Controller. If you're interested in CAN Speed (bit timing), here a good calculator link:
https://www.kvaser.com/support/calculators/bit-timing-calculator/6. For the resistors, if you're only trying to connect your Arduino + Can Bus Shield to a single "Display Board", you do need to have the 120R resistors at the end of the CAN Bus itself:
---CAN_L-------| |-----| |-----CAN_L---
| 120R | Arduino | | Board | |120R
---CAN_H-------| |-----| |-----CAN_H---
Otherwise, if you're "tapping" into an existent bus, you should be find by simply using a small stub from the middle of the bus.