This depends on what you think Napoleon's ultimate goal was and what time frame could be allowed for that goal to be reached. There were certainly better options unless the goal was total domination of Europe and the time frame was very short.
If Napoleon could have settled for less than total domination of the continent, there would have been no need to invade Russia. Russia was not threatening him. Instead, it was simply not helping him as much as he wanted. He could surely have gotten more help by diplomatic pressure on Russia.
If Napoleon could have been more patient, diplomatic pressure could also have gotten him domination of Europe. His armies were the strongest on the continent and he could have gradually forced Russia to do what he wanted using economic and political pressures.
I would argue that Napoleon should have used economic and diplomatic/political pressure to get Russia to do what he wanted. But if the goal was to get total domination of Europe ASAP, invasion was the only possibility.