The Spiders (22-7, 11-3 Atlantic 10) strengthened their hold on third place in the league and won for the sixth time in their last seven games.
Richmond pulled out to a 34-24 halftime lead, then turned back a Charlotte (10-18, 2-12) rally in the second half. The 49ers got as close as three points twice, the latest at 55-52 with 8:12 left, but the Spiders closed with a 17-7 surge the rest of the way.
Harper was 8 of 14 from the field with three 3-pointers, and had a team-high seven rebounds.
Anderson scored 12 of his 20 in the second half. His fastbreak layup with 7:35 remaining allowed him to surpass 2,000 points for his career.
The Spiders also got 11 points off the bench from Francis Martel.