I noticed the same behaviour, hence maybe the same problem on my system.
BOINC scheduler seems to give processor time to each project *in turn*, for an amount, or equivalent, set in BOINC Manager (x% of processor time).
If your project cannot fill *its turn* with enough WUs, too bad. Scheduler will not use the void for WUs from other (sub)projects, even if they are waiting on your pc.
This may happen, if you have limited the number of concurrent WUs. Solution: relax the constraint on concurrency somewhat.
Edit: BOINC version 7.6.33