Okay…
When asked a complex question, don’t answer immediately. This can be played out in all sorts of good ways. If you genuinely don’t think you can give a satisfactory answer, say so. Let them know you want to think about it. This will ensure that when you speak, people will listen as they presume you give as much consideration to everything that comes out of your mouth.
If you do know the answer, pause and look thoughtful, you will be amazed how long people will sit and wait for you to respond. Again, it lets people know that you consider very carefully what you say.
You say they think you are naive to your credibility which means you are obviously good at what you do, play to this. You clearly over think things. Turn this to your advantage, let everyone know that your epic mind is working on their problem and they will love you when you do the business.
As for small talk, **** it, just listen to them blather on about their kids, blather back a bit and then get down to business.