Tip for you guys-
The reason BofA is giving him a problem about the name is the fraud problems they have with business accounts. A $4k fraudulent check chargeback can trash a manager's annual incentive (as in, they wait the whole year to get it). If you think of a business account like a person, you may have John Q Smith and John A Smith - sure, they're close, but if John Q is dropping John A's checks in his account there is a problem. They are different people even though the name is very similar. Is it highly unlikely? Yes. But in the end that is the policy/law and they can lose their jobs if they run a transaction for a high enough amount that ends up being a loss for the branch.
Second, unless you are running a major amount of money through an account - and a bulk of it is actually staying there month to month - you have very little leverage. Sure, they don't want you to close an account, but most bank branches have thousands of accounts. Your closure is just one of many closing and openings that occurs during a month. If they have to choose between potentially forfeiting their annual bonus or putting their jobs on the line, they are absolutely going to let you go ahead and move your account on down the street. There simply is very little incentive to the average manager and probably zero incentive for your average banker or teller to bend policy in your favor. Using the "I'll close my account" as leverage most likely isn't going to get you much, and its likely to decrease your likelihood of getting your way. People jump to that threat frequently and its basically an insult to whoever you're talking to.
Your best bet is to A.) issue "Make Checks Payable To" notices on all your invoices, B.) File DBAs for common misconfigurations of your name (if they are fairly off base) and C.) develop a good relationship with your local branch.
It is true you may get more latitude at local banks or credit unions, but not that much. Most banks play by the same general rules. And expecting large banks like BofA (etc) to bend for you is unlikely. If you're getting stuff through its because your local staff either A.) knows you, B.) doesn't know enough, or C.) doesn't care enough. With any of those options they are likely putting their jobs on the line, knowingly or not.