If Google finds any junk traffic being sent to the site, even that may cause a drop in CPC. Viral and social media traffic is often considered to be junk most of the times. You may need to attempt to get more of organic traffic.
Live....and Let Live!
Another reason is Smart pricing. If the advertisers are not getting conversion from the clicks on your account. Then google keeps track of this. And then google uses smart pricing to protect the advertisers. once the account goes smart pricing, there is no way you can get higher price on your website.
In order to get out of smart pricing, you have to literally change your websites in some cases. And some people also create account under new company to get rid of that smart pricing effect.
Make sure not to use the PTC traffic for the adsense ads. Also when using adsense ads on website that has more social users coming to click, increase the SEO efforts to balance it.
Remove the content that doesn't get much traffic. And also have quality content site and not the sites which are easy to make and has lot of copy pasted content.
Once it is over or when that particular webpage traffic is over or decreased than the recent mass one then again you will get back to normal traffic and average CPC from them, and their better calculation and variation changes sooner.