Multiplication is repeated addition, DIV is repeated substraction, MOD is DIV with outputting the remainder. I have little experience with building compilers, but those things are manageable in assembler.
I was also thinking about function calls. We could emulate the stack handling and use RTC slow memory (a few dedicated bytes at the end) to allow simple function calls.
Has anyone played with this?