Rather than training up your current team I would suggest a Sharpedo
Since your Marshstomp is Lv44 it would have an easy time with Solrock and Lunatone.
Surf is a move I strongly recommened to have on Marshtomp. Surf is both Super-Effective to Lunatone and Solrock. Solrock will easily be taken down as well as Lunatone take some pretty good amount of damage
As for your partner I would highly suggest Sharpedo. Caravannah can be caught with a Good Rod or Super Rod on Route 118 and 119. Sharpedo can be found at Routes 103, 118, 122, 124, 125, 126, 127, 129, 130, 131, 132, 133, and 134 it can also be found in Mossdeep City and Pacifidlog Town with a Super Rod.
Sharpedos caught in Mossdeep city are around lv 30-35 and comes along with Crunch. Shardepo will not take much damage with surf and Lunatone will have a tough time dealing with it. Teach Sharpedo a water type move and level up in Magma Hideout
For Future Reference
You might want to do some training up later with your other Pokemon.
Skarmory : Route 117 they have Roselias, Volbeats, and Illimises which Skarmory can easily KO and dish out some decent Exp. If they don't seem to be enough try go for Route 120 and Route 121.
Those Linoones and Absols are pretty Exp generous :)
Breloom : Fish with the Super Rod in Mossdeep City. The Wailmers and Sharpedos give out lots of Exp. Plus Breloom can deal with Sharpdo quick and deal neutral damage to Wailmers
Kirlia : Gabby and Ty have Pokemon that Kirlia could face up to. Or Route 118 will do.
There is also the Match call. See here for more detailes