We have an intermittent problem on a production instance with SQL Agent jobs. The instance host 40 databases and 30 of these have log shipping enabled. There are nightly backup jobs and numerous log shipping jobs running. Occasionally one of the full backups commences creates a 0 byte file then nothing happens. The job continues to be marked as running but never completes. Worse still all of the other jobs don't start when schedule to do so it's as though the agent has stopped. Stopping and starting the agent usually fixes the problem. On two occasions the SPID that commenced the backup won't go and SQL Server claims to shut down but on restart another instance of SQL Server tries to start ignoring the broken instance. In this scenario only a reboot of the instance fixes things. The instance is running in a VMWare virtual.
This is not something I've specifically run into, so all I can offer is some general advice. First, I would reexamine exactly which script is being used to run the backup processes. Is there anything that could prevent a successful completion? Are you using a third-party backup tool? When your backups are running, can you identify blocking processes? Are there any errors in the error log? How about in the Agent log? Do you have output for the jobs? If not, I'd define one for the job so you can see exactly what the output from the jobs are.