Consider using the "unix-dotfile" VFS instead of the standard "unix" VFS.
(Add the string "unix-dotfile" as the 4th argument to sqlite3_open_v2().)
The unix-dotfile VFS will use dot-file locking instead of posix advisory
locking. The unix-dotfile VFS will usually work better on NFS.
The down side of unix-dotfile is that will cut concurrency, but it sounds
like you are not using concurrency anyhow. Also, if a process crashes, it
might leave a stale dot-file lock that you'll need to clear manually.