Sounds a bit tricky, but it can be done if the five jobs are performing similar tasks. If that is the case you can create a generic job that these five jobs trigger with parameters. Example:
Job1 is triggered by Fileevent1. It calls generic job with parameter par1
Job2 is triggered by Fileevent2. It calls generic job with parameter par2
Job3 is triggered by Fileevent3. It calls generic job with parameter par3
Job4 is triggered by Fileevent4. It calls generic job with parameter par4
Job5 is triggered by Fileevent5. It calls generic job with parameter par5
In the generic job, you check the 'Do not start if job is already running', and 'Put job in queue' checkboxes. Then it should work as expected.
If the jobs perform completely different things, you have to figure out something else :)
Thomas