Completely by accident, I stumbled upon this cafe that serves the elusive banh mi. It's a small cafe called Café Bay, on Denmark Hill near Kings College Hospital; they do the normal range of sandwich shop fillings, but they also had 5 Vietnamese fillings, IIRC spiced pork, shredded caramelised pork, some kind of sausage, chicken satay and the "special", which I tried. It was a normal white (wheat) baguette, and the filling was some kind of mayo, paté, spiced pork (which was sort of like belly pork with streaks of silky, creamy fat), pork roll, shredded raw carrot, pickled cucumber, coriander and red chili.
I've never been to Vietnam so I can't vouch for the authenticity, but the manager and some of the staff are Vietnamese, it was really delicious and filling, and only £3, so I was very happy with it. They also offered Vietnamese iced coffee and filter coffee (around £2 I think) which I'll be trying next time I visit. Very happy to have finally found this especially as it's just around the corner from my office!