HMRC overcharged taxpayers £3.5 billion in income tax the latest data shows, with tax coding errors largely to blame.