There are available resources but my jobs are not running, with QOSMaxJobs given as the reason in squeue output.
This is not a problem, and the jobs will run later.
For projects who have used more than their allocation there are stricter limits in place for the running of jobs. This is in addition to the lowering of priority when projects use up 100% and then 200% of their allocation.
The additional limits are given on Queue Policies and Limits#AllocationUnderuseandOveruse.
QOSMaxJobs appears when there is a limit on the number of jobs that can concurrently run per user, and you will see that some jobs (up to this limit) do not have this reason while the rest do. Once those jobs complete, the next will be allowed to run.