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 :).
If both players are adults and have truly established 1700-ish and 2100 ratings, there is no plausible way the B-player will reliably defeat a 2100 player after one year of study. None.
That's the fact of the matter.
The ratings are not arbitrary and are well grounded in math; the 400 point difference means the lower rated player has no chance of winning at all.
Flukes happen, of course. I am a B-player and have drawn a 2100 twice in slow-time-control games. It was the same guy both times. He was bored with my play and started trying stuff. When he got in trouble, he turned on the juice and I could not secure the win in either game.