What kind of training should a Class B do for a year, if he or she wants to defeat a 2100 player? There's an Expert Class that I specifically want to have a good game with or defeat. Though I always get destroyed badly in blitz. What can a Class B do in year to become strong enough to have a really good game or even defeat an Expert Class? Any advice?
If you want to defeat specifically one opponent the easiest way would be to check his games, try to find his weaknesses, and try to prepare and then reach positions which he doesn't feel comfortable with. Maybe this will be simple positions maybe closed games with manovering, maybe sharp tactical games. See what type of positions he tries to reach, and drag him to completely different ones. Obviously you should invest most of the time to get better in this kind of positions. 

If in general you want to have a fighting chance against an expert player, without investing the time and energy to get good enough, than you should do lot's and lot's of combinations, prepare an opening repertoire with gambit openings, and try to catch him in a dobious, but complicated position. You will lose more than win, but every now and then you will nail him.

And then there is the hard but revarding way of generally perfecting your game :).