The problem with this game is that perfect shielding is too good. It's to the point that zoning in this game is just backwards. Unlike conventional fighters, where you use your attacks to control space with the goal if hitting your opponent's body, you instead control space with your shield by intercepting any attack your opponent might throw out.
This causes the neutral game to be largely grabs and shielding followed by your out of shield option of choice. Because shielding is so good, grabs are the safest form of offense in this game. It's one of the few options that punishes shielding and also happens to punish other stuff like landing and mistiming attacks. You can also happen to cancel shielding into grab, so the best option in the game can be cancelled into the 2nd best option in the game, which happens to counter the first option.
Attacking in this game is essentially regulated to punishing someone for being thrown into the air, trying to get back onto the ground from the air, or throwing out a move away from your opponent to punish a bad dash grab attempt (face it, your opponent should have ran -> shield -> grab). You can also try your characters' auto-cancelled aerial so long as you perfectly space it, but I'll explain why that is even somewhat risky in a second.
For anything not grab, perfect shield will beat it (there exists very few exceptions to this). If you let go of shield as soon as you land a perfect shield, there is no shield drop animation, allowing you to punish with whatever you feel like. So if your opponent keeps doing auto-cancelled aerials to space you out, run up, perfect shield, and then punish.
Once your opponent is in the air is when it is finally reasonable to use attack moves. When you're on the ground and your opponent is flung into the air, you can basically think of this situation as two cases. In one case, your opponent is so high from the stage that will not receive landing lag if they air dodged at this point. This point is very risky to commit to anything. Typically, you try to jump somewhat close to your opponent just to bait a reaction. If done right, you force your opponent into committing to air dodging or attacking. Even if you can't punish that commitment, they are now forced to be closer to the ground. If they jumped, that's cool too, because now they won't have that option in a second.
Then you have the point where the opponent is closer to the ground and air dodging will result in them having landing lag. This is where there is actual yomi in play. They can try to attack you, jump away, or dodge into the ground in order to avoid getting punished. Here, there are a few tactics you can perform such as empty hop to bait a reaction then punish their landing. You can also run underneath them and shield their option then punish the landing as well. If they jump, the scenario just resets. The one real mix-up the opponent can have up their sleeve is to essentially do nothing. They can attempt to fast-fall during tumble and tech away which can slip by your current options, or if they're not in tumble, they can land then flee or grab you.
And then it's back to Super Grab and Shield Brothers.
Continuing on the subject of the game feeling very defensive, I believe that recovering in this game overall is not very interactive either, so it is in most cases the smarter idea to stay on stage and wait. Some characters by design are able to be edge-guarded to a reasonable degree, but the overall ledge mechanics do not ensure that is the case for every character. Slow recoveries, linear recoveries, flat out bad recoveries, and recoveries with no hitbox are the recoveries at risk for being actually edge guarded. Characters with multiple paths to the ledge or characters with straight up invincible teleports are not ever going to be reasonably edge-guarded. And that saving grace people talk about, trumping the ledge, doesn't work so long as the player holding the ledge first buffers another option straight from the ledge. At the very least, the threat of being ledge trumped makes players commit to a decision when they grab the ledge, but as the edge guarder, it's not worth giving up your stage position to play a dangerous game of rock/paper/scissors with how your opponent is trying to get back up from the ledge.
More often than not, it's best to try a couple of no risk options to edge guard. Options that are quick enough that you can get back to controlling center stage before they grab the ledge. These options also rarely do anything as they either cover a very niche recovery path or only work in the event your opponent makes an execution error.
Wow, this post became a little bit bigger than I thought it was going to be, but I think this sums up how the metagame works at the moment. Diddy being the best kind of fits in here nicely too. He has the best follow up out of throw, has some nice attacks to bait out air dodging and stuff, and his banana and command grab makes shielding and movement actually somewhat risky for the opponent. He has somewhat of an edge in the neutral game over the entire cast and a definite edge in the punish game.