HI Marais,
After some investigation, I feel your problem might be caused by blob SharedAccessKey expire.
It might be caused by network latency or slow file reading.
And I need your help to find out root cause.
Can you do following things?
1. Download Process Monitor (http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx)
2. Set filter to only monitor LocalAgentHost process

3. Make sure File & Network activity are monitored
4. start a sync and wait it failed
5. Open the agent log and search out the event "id:SyncController_BatchSpooledEvent" which happen during this sync
e.g.
SyncController 9/8/2012 2:01:47 PM id:SyncController_BatchSpooledEvent, rId:, sId:2a0c4b47-3c2b-4e0e-9fb4-69c36de6a4c5, tracingId:6aeb14b8-3917-4d76-a5aa-f0e2bd57c999, agentId:6b28a3e2-9e3c-4904-b99e-ba735021a242, agentInstanceId:812b1345-6e0a-4226-9c1e-48b253465dee,
syncGroupId:dc4bd576-f058-41b5-9366-3f6e33096601, memberDbId:72882f3d-e668-4837-bc27-0810b4727bd0, hubDbId:a359ab16-843b-40d1-8021-ff3044236a42, currentBatchNumber:1, totalBatchesSpooled:1, batchFileName:0463ce7b-be40-4d12-9174-42895577e4a8.batch
6. Find corresponding write file event in Process Monitor and capture all the followed event log until next agent log written event for "id:ClientRequestHandler_ExceptionProcessingRequest"
e.g. (id:SyncController_BatchSpooledEvent written at 9/8/2012 2:01:47 PM UTC
id:ClientRequestHandler_ExceptionProcessingRequest
written at 9/8/2012 2:01:50 PM UTC )

Then you can copy the process monitor log and related local agent log and send to me.
Thanks,
Jarod Zhu