Please explain why duration underestimates the increase and overestimates the decrease in value of portfolio?
Because the price-yield curve is convex and not linear - convexity adjusts for this.
Good visual here: http://thismatter.com/money/bonds/images/modified-duration-convexity.png