This type of fluctuations are normal in google. Everyday google results are updated.You should get a quality backlinks because Google count quality links. I hope you get a top result in SERP.
On highly competitive keyword it is difficult to give the ranking. and it take time to come these keywords on search engines.
You have to get more quality backlinks by offpage optimization work and link exchange because Google give importance to quality backlinks in keywords ranking. Keep it up.
As we know that Google change its strategies and you have to get more and more quality backlinks from high relevant sites. Keep it up.
you cannot actually maintain to be on the top when you are not continuing to build links. I already experienced it. that is why you need to be patient. link building process is the most crucial thing. it is a continuous process