Ok, I have some great tips for you because I'm playing this game and I already complete this like 5 times!
First, get some X-Eye Seed and Reviver Seeds.
Now I use this on Groudon and I fainted him without taking any damage with only 2 X-Eye Seeds.
Use X-Eye Seed on Dusknoir and start killing the Sableyes. Have some Reviver Seeds and Oran Berries, when Dusknoir gets back from the vision, send again a X-Eye Seed and then start doing some damage on him until you win.
The Sableyes, Grovyle can finish them with 1 Leaf Blade. Be careful to don't spend to much Reviver Seeds for die, so use Oran Berries often when you, your partner and Grovyle have low HP.
X-Eye Seed is perfect, enables Dusknoir from stop attacking for about 10 steps, that is enough time for faint those Sableyes.
What you need +3 X-Eye Seeds +5 Reviver Seeds +5 Oran Berries.
More easy, is having Pikachu with Discharge, fainting all Sableyes in 1 move, but don't Forget to use X-Eye Seed on Dusknoir!
If you want ''infinite'' Reviver Seeds, I know the best trick for it! First, go to Dragon Maze, the only items there are Money/Oran Berry/Escape Orb.
Collect the maximum of Escape Orbs, then go to Recycle Shop at Spinda's Café and you can trade 2 Escape Orbs by 1 Reviver Seed.
Hope this helps and good luck!