I believe I have found the solution, so I wanted to post it here. I have been able to reproduce the problem of the program freezing at 30% when there is not an interact.prot.xml file for each input interact.pep.xml. Likewise, I can reproduce the problem of the program freezing at 70% if the individual interact.pep.xml files are not present.
I commonly search my data separately with XTandem and Comet. I run PeptideProphet separately on each batch of files. I then combine my comet.interact.pep.xml file with my tandem.interact.pep.xml file into a single interact.iproph.pep.xml file, and then run ProteinProphet on that file. In order to run Abacus, I needed to run ProteinProphet and produce a comet.interact.prot.xml and a tandem.interact.prot.xml file.
I had to read the paper and the tutorial a couple of times to fully grasp this. In summary, here is how you need to set up your data in order to run Abacus.
Any number of <filename>.pep.xml search engine output files are input into the TPP (InteractParser-->RefreshParser-->PeptideProphetParser) and produce a single Experiment.interact.pep.xml file.
Each Experiment.interact.pep.xml must be run through ProteinProphet to produce a Experiment.interact.prot.xml file.
If there are multiple Experiment.interact.pep.xml files (for example, combining different search engines in iProphet or combining different biological replicates), then you must run Experiment-1.interact.pep.xml, Experiment-2.interact.pep.xml...Experiment-n.interact.pep.xml through ProteinProphet together and generate a combined COMBINED.interact.prot.xml.
All of the interact.pep.xml and interact.prot.xml files must be in the directory where Abacus is run.