I'd like to see some specifics- namely
- what is the bandwidth of the connection (both ways) at each site
- what kind of performance specifically do you have during these file transfers?
I see this is only a 768K pipe... yet you are running AD DNS to the clients over this pipe, as well as "a Windows-based application that connects to a database on the Windows Server 2003 domain controller". This is a lot of traffic- especially the database. I would imagine that runs like molasses. Databases can consume tremendous bandwidth, creating indexes, etc. Many accounting apps cause these same issues when trying to run them across VPN's. And, with no DC at that site, there's a lot of AD traffic running through that pipe.
It's likely there is indeed nothing wrong with the VPN, but that you are just trying to pump too much through that pipe.
Depending on what this DB app is, and whether it supports it, I would consider moving that to a terminal server. This approach moves the processing and data transmission burden away from the client workstation, and cuts traffic dramatically. You are then only transmitting screenshot data back and forth.
I would also consider a Domain Controller at that site. You can then reduce AD traffic, and pretty much limit it to replication.
My 2 cents.