The problem seems to occur with files which contain a block with the same name as the file name. E.g. the file is named 'MyBlock.dxf' and contains a block called 'MyBlock'. QCAD creates a block with the same name as the file name when inserting parts. Since the newly created block 'MyBlock' then contains another block called 'MyBlock, this creates a recursion.
To work around this, the preferred way it to create only part library items which contain no blocks at all (all entities defined in model space). When inserting such an item, a block with the name of the file name is created.
If your part library item must use blocks, they should not be named identically to the file name. Note that this can have other strange effects if the blocks in the part library item already exist in your drawing.
The previous version of QCAD always checked for recursions which has become too expensive and slow for files which contain many blocks.
The next version of QCAD will likely refuse to insert items that do not follow the rules above or possibly automatically rename those blocks to work around the problem.