I don't know if there is a better option but the GoI definitely didn't think this throughly. Countries that demonetized in the past did this over a span of a time to prevent panic and fear. If the Govt set a deadline instead of abolishing them overnight that would go a lot smoother. Sure, that'll give 'some' tax evaders time to plan their 'exit' smoothly but it'll make lives of millions so much easier. Most likely, the evaders use that money to buy gold, so the Govt can temporarily track all gold purchases (they do it anyways for puchases over 2 lakh rupees). Even if they end up spending the cash on inflated real estate, they're in someways helping the economy instead of hoarding the cash and will end up in someone's bank account eventually. Also, all the big tax evaders rarely hoard cash. They usually have offshore accounts and sophisticated corporate structures.
Secondly, the new notes being minted have no additional security features. The RBI confirmed that the new 500 and 2000 bank notes carry the same security features as the previous ones, which probably makes it similarly easy to counterfeit. The RBI previously claimed that it would take 5-6 years to design notes with new security features and I think they should've waited until they have better bank notes to curb fake notes.