From your description it is very hard to tell what the problem could be.
I suspect one of the queries within the BCP process occasionally won't return data (no rows present or maybe a non-desruptive error?). If possible build a logging mechanism inside or around the BCP process that records the rowcount of each seperate step and the creation of the file(s).