You might find this page useful. It details even vague connections, themes and references that each name in The Matrix has, including some for Thomas A. Anderson, those mainly being:
Thomas means "Twin", in reference to the fact that he's been "living two lives", one as Thomas and the other as Neo.
Thomas is also the name of one of Jesus' disciples, namely "Doubting Thomas", who did not believe Jesus had died and been resurrected until he saw the holes in Jesus' hands, much like Thomas A. Anderson never believed he was the One until he himself died and came back to life after being shot full of holes.
Anderson means "Son of Man", in keeping with the whole "Messiah" theme that goes on throughout the trilogy (I mean movie, just one movie, there's only one movie).
As for the Agents, the whole point about them is that they have common, boring anglo-saxon surnames, such as Smith, Jones, Brown, etc.
You might find that one of the reasons they picked Anderson as a surname for Neo was simply because they'd used up a bunch of other common names for Agents and Anderson was simply next on the list. Neo's exact surname may not ultimately be all that important, though I have to say hearing Smith call him "Mr. Anderson" is a nice touch that probably wouldn't have worked with many other surnames.