I feel quite confident in altering phar.c – I shall do so as soon as my new laptop arrives, the old and faithful one having given up the ghost some days ago – but I think the problem lies rather in compiling (and distributing) the resulting phar.so module, which must match the existing PHP installation.
For me on OpenSuSE for example the easiest option seems to be to download the php5-phar SRPM and use that to rebuild the RPM.
But a quick fix would be to simply increase the open file limit before making the PHAR file:
ulimit -Sn 4096
I’ve tried it, and (where available) it works.