Change the bash script you call from Perl so it does:
bash subprocess &
bash subprocess &
bash subprocess &
...
wait
then it will wait for all its own children to complete before it exits itself. For example
sleep 5 &
sleep 5 &
sleep 5 &
wait
will take 5 seconds to run.