It doesn't seem unreasonable to me - a few points I thought of before reading this thread, most if not all have been mentioned by other people but anyway..
It's not 1 tank versus 1 spear guy. It's somewhere between 20 and 60 tanks, against 2000 - 6000 spearmen.
It's not one side at one end of a field and the other at the other end. It's an area that's maybe a few 1000 square miles so even if it's not a forest square, there's probably forests enough to hide a few thousand men in.
It's not one day. It's usually a couple of years in the game, although of course Civ doesn't say that the battle lasted the whole end-of-turn time. I think it's safe to assume that it's long enough so that the tanks need to reload and refuel, making supply trunks also viable targets for the spearmen. Also, things like eating, hygenie, maintence etc, mean that the crew will get out of their tanks and over the space of a year, they'll spend more time out of their tank than in it, and generally not armed as their handguns are quite possibly left inside their tank at night, at least when they haven't seen any enemies for a few weeks. Also, there's the the mechanics, supply crews, doctors, etc who are important, but who never go inside a tank. If the spearmen take out the supplies, they could be fighting against a load of hungry, tired, sick men who would quite possibly surrender easily.
The Spearmen may not have advanced weapons, but they probably do have books and training etc. It's a fair bet they do know what a tank looks like and what it does and are probably trained, to some extent, on how to fight them.
OK, it's not likely that a spearman unit would beat a tank unit, or a helicopter unit, or whatever. But with the right circumstances, a lot of luck, an incompetent tank unit commander or all three, it could happen. Likewise, in the game, it rarely happens but it does sometimes.
Also, it's important for game balance, which is the real reason why it happens!