Your example can't be replicated but findAssocs() is probably what you're looking for. Since you want to only look at associates on a yearly basis you'll need a dtm for each year.
> library(tm)
> data(crude)
> # i don't have your data so pretend this is corpus of docs for each year
> names(crude) <- rep(c("1999","2000"),10)
> # create a dtm for each year
> dtm.list <- lapply(unique(names(crude)),function(x) TermDocumentMatrix(crude[names(crude)==x]))
> # get associations for each year
> assoc.list <- lapply(dtm.list,findAssocs,term="oil",corlimit=0.7)
> names(assoc.list) <- unique(names(crude))
> assoc.list
$`1999`
prices barrel.
0.79 0.70
$`2000`
15.8 opec and said prices, sell the analysts clearly fixed
0.94 0.94 0.92 0.92 0.91 0.91 0.88 0.85 0.85 0.85
late meeting never that trying who winter emergency above but
0.85 0.85 0.85 0.85 0.85 0.85 0.85 0.84 0.83 0.83
world they mln market agreement before bpd buyers energy prices
0.82 0.80 0.79 0.78 0.75 0.75 0.75 0.75 0.75 0.75
set through under will not its
0.75 0.75 0.75 0.74 0.72 0.70
> # or if you want the 5 top terms
> assoc.list <- lapply(dtm.list,function(x) names(findAssocs(x,"oil",0)[1:5]))
> names(assoc.list) <- unique(names(crude))
> assoc.list
$`1999`
[1] "prices" "barrel." "said." "minister" "arabian"
$`2000`
[1] "15.8" "opec" "and" "said" "prices,"