Websites which are earning that kind of revenue via Adsense are highly optimized, well maintained and have a high organic traffic volume. You should realize that earning by Adsense is just like any other business, you have competitors and you need to have a strategy based on the rules of the game. Things suggested below are easy to write but need hardwork and dedication to accomplish and some of the also need an initial investment for the tools required.
Not all Keywords have the same value - do your Keyword research
As the heading says, not all keywords are created the same, some have a "Cost Per Click" or CPC of less than $0.10 and some go as high as US $50.00 CPC. In short, if the adsense ads displayed on your content were based on a low CPC keyword, you get a really low earning, while if the adsense ads displayed on your content were based on high CPC keywords, you earn a high adsense income.
Try to do some keyword research using tools like SEMrush, HitTail, Google Keyword Planner etc. to identify some high CPC keywords with medium to low competition for your sites based on your niche. We had a discussion about SEO Keyword tools for Long Tail Keywords here
Help Me/Question - What Is The Best Keywords Research Tool For Finding Long Tail Keywords? It has a list of some tools you can use to find long tail keywords with high cpc for your sites.
High Organic Traffic = High Adsense Earning
Try to perform extensive search engine optimization or SEO on your adsense sites to generate traffic for your high CPC keywords by posting fresh content and reducing bounce rate. The higher the traffic, the more ad impressions you gain and more ad clicks which means higher google adsense earnings.
Not all ads look the same
When you create your Google Adsense ads try to design them to integrate into your website based on colors, link colors etc. If you notice the Google Adsense ads placed by Adsense Premium publishers, you will notice they modify the adsense ads completely to match their design including fonts, font sizes and colors. As a normal adsense user you may not have full control over changing the design of your google adsense ads, you can still modify several aspects of your adsense ads when you create the ads. Choose appropriate colors based on each website. Create separate channels and ads for every site and tailor make them for different sections.
Google Adsense - Location, Location, Location
Just like in real estate, Location matters a great deal! Where your ads are placed on your website makes a big difference in the CTR or click through rate. Since, every website design is different you can experiment using different channels in your adsense by placing ads in different locations on your site and checking which ads perform better. Keep the ads close to the content, integrate them into your website flow. Don't annoy your website visitors with obstructive ads which make them leave your website and go to a different page. Your primary objective is to keep the visitor on your site, the longer they stay the more likely they are to click one of your ads if they see an ad related to the content they are reading.
Track your performance and optimize
Just like in manufacturing or any quality improvement programs, keep a plan in place to track your ad performance and optimize. I mentioned in the earlier points, about creating separate ad channels for every site or section, and separate ads for every part of that site. Although, it is easier to create on ad block and paste it in every location on every site you have - this is the lazy way and not really optimum for high google adsense earning. By creating separate ads for every site and section, you will be able to compare these ad performance wise and impressions wise to check if you have issues with one of your site or one of the sections on your site. This also helps in experimenting with ad locations, if ads in header are rarely performing and ads in your sidebar get more clicks, you can remove your header ad and use that in some other area on your site until you find the three best locations on your page.
Adsense is NOT get-rich-quick scheme
People forget, that Google Adsense is not a get-rich-quick scheme, it requires work, sweat, and patience to get results from Adsense. Several small publishers and website owners are happy getting a dollar a day from adsense per site, if they have 10 sites getting the same, they end up making, $10 per day which means $300 per month. But if you could work hard and get this number to go upto adsense earning $10 per day per site, it means you are earning $100 per day and $3000 per month, which is higher than an average take-home salary in the US. To get to this level, you require the dedication and research that goes behind creating niche adsense sites which generate traffic and high adsense earning.
Bottomline: Working hard can get your high traffic, but working smart will get you high adsense earning. Focus on high earning niche which also suits you and stop wasting time on low earning sites.