There are 4 things you need to develop (in no particular order)
1) A solid approach shot. If you are making contact halfway inside no-man's land, be able to CONSISTENTLY play that ball aggressively off of any height. If some heights are bothering you, read the short ball earlier so you can get into position faster and catch it at a comfortable height, but you still want to be able to play off of multiple heights. You shouldn't miss any of these balls but you should be able place the ball and control the depth. The go-to should be down the line and deep (not necessarily powerful, cleanly hit with a smooth, comfortable swing is plenty). If you close into the net slowly, you should lean towards using slice (don't feel like you need to hit a ton of underspin, just get a feel for the ball and do your best to keep it low after the bounce). Topspin and flat approach shots have a better chance of finishing the point outright, but give the passer more options and takes away time for you to close in on the net.
2) Net game, especially overheads. Most of the winners you hit and the errors that you force should come from volleys. IT IS CRITICAL TO IMPROVE YOUR OVERHEADS AND OVERHEAD FOOTWORK. The reason it is critical to improve your overheads is because (since they're already lobbing frequently) the lob will be one of their most trusted passing shots. Beyond that, if your footwork for setting up for overheads is better, you can close more aggressively on the net. If your overhead footwork is mediocre, you can't move too far inside the service line or you'll get beaten by a lob. This is problematic as this leaves you open to low passes and wide passes as well as greatly reducing your ability to end points with a volley. If you can get halfway inside the service box during your split step and move towards the net as you intercept the passing shot, you have a very good chance to finish with that volley.
3) A solid rally ball. Never miss into the net, and never miss wide when going down the line. Always miss long or wide crosscourt (but never wide when hitting from the center of the court). Always aim to take the net out of play (by always aiming several feet above it), and use plenty of topspin to keep it inside the lines, but aim several feet past the service line. Hell, if slice works better for you, and you can hit 50 of them in a row halfway between the service line and baseline, go for it. You are never looking to win points off of this shot, you are looking to stay in points as long as necessary with this shot (which is until you get that short ball you can use to transition to the net). If they make an error or fail to reach the ball before coughing up a short ball, then that's great for you. Aim most of your shots to the side that is less likely to hurt you and/or the side that is more likely to cough up a short ball. The name of the game is "I can hit more balls in the court past the service line than you can". That's all tennis has every really been. Doesn't matter how you do it, just that you do it. The strategy and tactics to achieve that fall into place based on your play style, skill set, and opponent.
4) The mentality to fight for each point and stay out there as long as it takes to get the job done. It is a competition of physical, mental, and technical capabilities. More than anything tennis comes down to a mental battle. It's a battle with yourself to keep moving well and to choose the right shot over the quick, easy, cheap shot. And as much as you might be hurting out there, remind yourself that your opponent is out there struggling with you. Trust your shots and accept that misses will happen, our goal is to minimize mistakes, not remove them altogether. Expect every ball to come back and be ready for it. Expect every ball to drop/curve in unless it's 2 feet wide.
Luxury parts of your game to develop
1) The serve, more specifically - the spin serves. Spin serves are more consistent, leading to higher first serve percentages. Higher first serve percentages puts more pressure on the returner. Not only that, they expand the area your opponent has to defend AFTER the return. A good slice and kick out wide can pull the returner an extra 5 feet away from the middle of the court, meaning your first shot has the entire court to work with. Even if they hit a good deep shot, if you can just redirect it to the open court, their next shot is likely going to be weak, and you can attack it if you don't win the point off your first shot outright (again, it's not about power, but placement, make them run). Flat serves should only be used as a surprise changeup (of course, with an emphasis on placement). On first serves, you should aim for more aggressive placements (short and wide) to force them farther out of position. On second serves, settle for the 3x3 square foot zone at the corner (or the body serve).
2) Hitting on the rise. It should be every player's goal to try and shift the tempo of the rallies into one they are comfortable with (and if possible, one that is uncomfortable for the opponent). Some people use this as an excuse to be lazy for their footwork though. Instead of moving to set up a good shot on the rise, they simply don't move and swat at the ball as it comes up. This is nothing more than a defensive shot, and a low percentage one. Hitting on the rise isn't so much about timing, but footwork and preparation. Timing is involved, but it's relatively simple if your feet are in position and your racket is ready to go early. Hitting on the rise will allow you to keep playing safe rally balls while still pressuring your opponent by taking time away from them.
3) Drive volley and sneak (volley) attacks. This is basically the hitting on the rise variant of approach shots. If you see your opponent in trouble, you can move in before they hit the ball and take the ball out of the air. Again, this should be treated as an approach shot (don't miss it, and just place it deep and off to the side, while avoiding the sidelines). This is genuinely the scariest thing to face as a moonballer. It means you have to go for a little more when you're on the run or they'll (likely) put the ball away with 1 shot.
4) Drop shot/short slice + passing shot. Honestly, the drop shot is just overall not a great shot unless you're already well inside the court. If you try to play it in the middle of a rally from behind the baseline, you'll give away so many free points. If you play it from a position you should be playing it from, you could've just as easily used a normal approach shot. A far better option would be to use a short slice. The goal is to try and get it to bounce twice a few feet before the baseline. It's easier to execute and still does plenty to mess with your opponent's positioning. If you can do a short backhand slice crosscourt, then throw a deep looper to the other side on the next shot, you'll get your opponent moving a lot while hitting tough shots. If you throw the short slice and see them prepare to hit a slice, quickly move a step inside the baseline and halfway into the ad side of the court. The next ball is going to come in slow and weak, allowing you to set up for either a crosscourt forehand (potentially with angle if they drop it short) or move around the ball quickly to take the ball up the line with an inside in forehand (or inside out behind them). The passing shot is so you can punish them if they opt to try and approach off of your slice. If you did a good job of keeping it low, they can't put a lot on the approach and you will have a legitimate look at the pass (don't cheat too far to your backhand corner if they are the type to try and come to the net).
5) Fitness. In all honesty, fitness is a luxury. You don't NEED it to win against a moonballer unless you're REALLY out of shape. As long as your footwork is light and you aren't trying to move a mountain with every groundstroke you hit, you can last a lot longer on the court than you expect, especially if you fully utilize the 20 seconds you have between serves, 90 seconds on changeovers, and 2 minutes between sets. Being more fit strengthens your mental strength because you know you put in the work and can likely outlast your opponent. Not only that, it'll make your movement better and if done right can put a little extra racket head speed on your swings. A moonballer won't hurt you and they won't force you to sprint too often. You will still be moving plenty, but you should be moving lightly and quickly, which takes less energy than hard stops and change of directions.
The one and only strategy video you really need (it all falls into place if you just treat moonballs as their rally balls and focus on keeping your rally balls deep and aim them in the direction dictated in this video):
And for overheads: