Since you were fairly vague I hope I am correct in understanding your definition of
Long-Term Variance. You are training a model on N data and trying to predict N+X where X is some large number. For example, training on last year's data to predict the variance every day this year. Or the next 10 years of variance. Something like that.
Assume we have a well-defined stable GARCH model with alpha + beta < 1. One primary feature of GARCH(1, 1) is it's recognition that variance pulls back to a long-run mean. What happens when you attempt to predict too far into the future is the GARCH model, operating on it's training data, will "go flat" as it approaches the long-run mean of the variance. This is expected because variance will eventually pull back to it's long run mean. In reality though, this isn't always the case. You have to deal with
regime changes that can happen fairly frequently. This is why GARCH tends to give relatively poor forecasts of future variance as time goes on. Without getting too much farther into the mathematics of it GARCH models don't always perform well on long term forecasts because equities regularly undergo significant regime change. There are a ton of other GARCH models you can try, and a few papers on bivariate markov extensions to them. They seem to have some promise if you have the chops to implement them.
@sle has the correct idea:
His answer to solving long-term bias is to use a rolling window. You would train from your start point to 20 March 2007, predict 21 March 2007, and roll the window 1 day forward. This is a very traditional way of getting around the problems I listed above.