My PCBs etch all bad! (sodium persulfate)
Your main problem is coverage with the permanent marker. They do work as an etch stop, but it is hard to get uniform coverage - you end up with more ink in the middle, and less at the edges (it flows). For very large plane areas you will also get blotchy coverage.
Any areas where the pen puts down less ink will let some of the etchant through, giving you the patchy results you are seeing. This is especially the case for thin traces.
If you want to keep trying PM, try going over the areas multiple times. You could also switch to a different pen such as sharpie, as they tend to give better coverage.
Failing that, another option is to switch to the toner transfer method - which in short uses laser printer toner as an etch stop rather than permanent marker. This tends to give slightly better coverage. There are also companies that offer special paper that bonds to the toner to fill in small gaps.
When it comes to etching, if you were thinking of switching to Ferric-Chloride, don't submerge the board in it. Instead wear a rubber glove and put a tiny amount of the etchant on a sponge (like you would use for washing dishes, but not the same one you use for washing dishes!). Wipe the sponge back and forth gently over the board. Once the sponge goes green, add a drop more etchant.
This approach is far faster because you use mechanical action to keep fresh etchant on the board surface. It doesn't require heating to speed up the reaction. And the best bit is, your storage jar of etchant stays at full strength because you never put the copper into the storage jar.
Main problem is indeed that the permanent marker is coming off for some reason.
It's difficult to say for sure, but two general tips:
Wash the board before applying the marker, and let it dry longer than you think it'd need. It seems that the copper surface easily retains a bit of water on it even after it appears dry. Heating with e.g. hair dryer helps it dry off faster. You mention sandpapering the board, which can also work, but if there is anything oily on the surface, might not be as good as washing.
Let the marker also dry longer than you'd think it would need. It will keep forming more chemical bonds for a while after all the solvent has dried off.
These apply equally for any kind of coating, be it marker, photoresist etc. Even for toner transfer, 1. is important (toner hardens quite fast because it has no solvent, so 2. is irrelevant).
Had similar problems with etching. First thing would be to buy a new set of markers and use them only for PCBs to prevent any contamination with oils and fats. You don't need to sand the board it's better to take some steel wool or a wire brush, because it won't remove so much copper. After cleaning, wipe the board down with some isopropyl alcohol, then draw the traces.
Also, you can do the etching on the kitchen stove, as persulfate isn't toxic. use a plastic container with persulfate solution and put it into a bigger pot, which I fill with water and then set on the stove. This way, you can regulate how much heat gets to the solution and keep it at its optimal etching temperature, which is around 50°C for persulfate.