Hello, I'm a new member of the forums (gasp!) and as an SLP student I just wanted to throw in my two cents.
The first thing I thought of is that your son might be "backing," or making sounds that are usually more forward in the mouth (like "b" and "d") further back in the mouth (like "g" or "k") - for example, he may say "kak" for "cat." What I find interesting is that he doesn't pick up on being able to see your lips come together for the "b" sound - which is maybe why your SLP is stuck, since that's a good visual cue by itself. It is a common process for all children who are developing spoken language, so don't feel that it is some weird new pattern that no one's seen before.
Second, he is still fairly young. Check out this googlebook, Shipley & McAfee's "Assessment in Speech-Language Pathology." It's a great resource for if you're noticing odd patterns and want to sort things out. Page 228 has a description of backing, but there are a lot of other neat things to check out in there, too.
Assessment in speech-language ... - Google Books
Also, this page reports that backing is still within normal limits for hearing children up to three years old:
Phonological Processes
I would say to make sure he can tell the difference between all the sounds (to do a discrimination task) when they're presented to him. Has your SLP tried any discrimination tasks with your son to make sure he actually hears the difference between "b" and "d" and "g"? And keep up with the visual cues! Multilingualism is a precious gift in today's increasingly integrated society, and learning sign and English is a wonderful start.