Running multiple IR receivers on a single raspberry pi is not particularly difficult. Adding another dtoverlay to the config.txt works just fine and the lirc documentation explains how to add the second device. My issue is that I need the same command to map to a different keypress depending on which device picks it up. This is not an expected use of the software, so it isn't easy to do and it isn't documented.
As far as I can tell, lirc does not allow different mapping for each device. I think ir-keytable might, but it's lacking in documentation. I'm hoping that I can use ir-keytable to convert received signals to keypresses, then use lirc to turn those keypress into keyboard button presses. This will take some experimentation and might not even work.