I see several options:
- Change your code to achieve lower delays on the other functions
- Use interrupts at a set frequency to trigger the sending (and maybe the automatic transmission trigger pins, see MCP2515 datasheet, depending on pin use & schematic of your specific shield)
- Use a basic scheduler/rtos
It is hard to tell what is going on without the rest of your code, if it is a good idea to try to achieve faster functions.
I am not 100% sure the CAN-lib would will work well in the context of an interrupt.