You're running into a limitation of the free FPDI parser, which can't handle modern PDF compression (e.g., PDFs using object streams or compressed xref tables). The easiest and PHP-native way to handle this without relying on exec() is to use libmergepdf with the TcpdiDriver.