Sharing the pain has benefits, but you're almost certainly paying more in lost productivity on both bugs and features than you're gaining in insight and sensitivity. As a small and stable company, you can probably afford the loss as you learn more about your market and as you prepare for more organizational complexity, but it will eventually inhibit your growth and burn out many of your developers.
Regarding flow, we don't have all of the developers doing support all of the time. We have one developer doing support at a time and rotate each week. This protects the rest of the team from having their flow I interrupted.
Putting the responsibility for tech support on your development team is how you increase your turnover rate.
Personally, I don't believe he's really doing that, I think it's just marketing.
1. Giving our clients the best possible technical support
2. Making our developers feel the pain (and joy!) of clients using what they built. I can't think of a better way to motivate developers to fix what's sub-optimal, share in the success of a job well done, and come up with new ideas to help our customers.
We're not alone in this strategy:
http://www.helpscout.net/blog/customer-pain/
https://gettingreal.37signals.com/ch14_Feel_The_Pain.php