There are many things you can do too thwart goblin advantages.
crossbows – the +20% to hit and increased damage wrecks goblins. The best guys to aim for are the pike wielding skirmishers and guys with nets
night – darkness gives your guys +20% to +50% ranged defense depending upon their normal ranged defense
bushes – use them to creep closer to the enemy without being shot
flanking – send 4-8 guys around whiling remaining out of sight so that you can charge the enemy from every direction and cut off escape.
dogs – cheap, unarmored released en-mass (4-6) on the flanks will always go for their archers and give your troops a safe charge
arrow sponge – have a guy sit by himself, 3 spaces away from their front line, with a kite shield, in shield wall. The goblins will waste their bollos and archers usually don’t hit either.
as for the value of shields with heavy armor, armor helps with getting hit but it’s always simply better to not get hit. I’ll give you one of my favorite movie quotes.
“Got any advice” (as they head toward the fight)
“Yeah! …don’t get shot”
And as you pointed out, the goblins use their daggers’ “Puncture” ability to bypass armor