However, every time I have tried to run a PbP boards game the same thing has happened: A few weeks have been great, everyone has been happy, then I for some reason or another can't post for a week or two without being able to give proper warnings of it beforehand and the games have died. That's the problem with PbP games: Games with people you know aren't likely to die out unless people actually become horribly busy or someone else from the group wants to start DMing his own campaign. However, in medium in which you know all the others only from one forum and meet them only there, people are more likely to desert the games. Or well... At least that is something I have had to notice in myself. I someone has a cure for such a problem, I can run some game.
I have a combination of cures. Obviously they're far from a panacea (the problems you mention are very much real) but I did manage to run a few games which I thought went well (i.e. 3 months of at least 10 posts per day, each day with up to 20ish players at any given time). Admittedly, it wasn't DnD.
Problem 1) You're the GM, you're expected to dedicate more time than everybody else.
Solution: start the game prepared to dedicate more time than everybody else. Think about PCs, quests, plots, surprise your players. Figure out what they want, actively keep them happy.
Problem 2) Combat (i.e. DnD) takes 3 weeks to complete
Solution 1: don't wait for players unless you absolutely have to. That spot check in the forest? You don't have to wait for a day for each player to make it, you can roll it instead. Or do something else (i.e. make players do 20 rolls in invisible castle, use them as the need comes up). That way each player has made their own rolls AND they aren't always sure what roll they made/failed (i.e. if you say "You see a merchant down the road" they're not sure if it's because of the 19 that's coming up or because it's just a fat merchant who's making no effort to conceal himself).
Solution 2: come up with good custom rules, and wing it. Example:
-Make combat more real time - each round of combat is resolved within a definite period, best 24 hours (player posts or not). Initiative is influenced (on GM discretion) by posting turn. The best part is that it's also more realistic - in a real fight you can't wait to see if your comrade which is a fraction of a second faster than you managed to land his hit so you can plan accordingly. Example combat with players P1, P2, goblins G1, G2 (the surprise round has passed):
--In one scenario P1 has posted an attack on G1. P2 logs in sees the post above, posts an attack on G2 (yes, taking a risk because he isn't sure how P1's attack went - for all he knows P1 may roll a critical miss, fall prone, drop his weapon and be in dire need of assistance). The GM logs in and resolves the combat: P1 hits G1, the goblin is mad.P2 hits G2, G2 dies. G1 hits P1 back. Round is over, next one will be over in 24 hours or less.
--In another scenario P1 has posted an attack on G1. P2 decides to post later. P1 has posted an attack on G1. G2, seeing that P1 is more aggressive sneaks around to flank him: G2 hits P1. P2 logs in, attacks the hurt goblin (G1). GM resolves: G1 dies, round is over (as above)
If the above two scenarios look the same to you, consider this: in the second case the PCs have suffered double the damage they did in the first case. Further more, they lost tactical advantage (they could have flanked the goblins, but instead the PCs were the ones flanked). Combat ran this way is realistic and avoids waiting for each single player to post exactly on his turn each single time. You do have to have your players' trust to do this - a round is 24 hours long and if a player doesn't post he has to know that the GM will take his action without harming the PC's best interest.
It's all down to GM discretion of course - for all you (the GM) care, even though you have both players' posts, you can run the round in the way you see most reasonably. Maybe you rolled 20s for G1 and G2s initiative, so it can go another way: both goblins attack P1. G1 shoots his bow, G2 goes in melee. Now P1 is in melee with G2 and it's unreasonable to provoke an attack of opportunity to go all the way to G1. So I'd run the combat like this: G1 shoots at P1, G2 goes in melee and swings. P1 hits back and takes G2 down, P2 (although he said he attacks G2, but G2 is down) goes and attacks G1. If you encourage the players to describe their actions like they're readying actions this flows much smoother (i.e. "I hit the nearest goblin" instead of "I hit G1". In a real fight the enemies don't have little numbers over their heads and you really don't care what name/number the one you attack first is, as long as you have a good shot at him). Be lenient at first, let players get used to it. If you know your players well enough you can pull off some beautiful combats AND have your players be happy about it.
Problem 3) Shit happens, people drop out.
Solution 1: start the game knowing you'll have to replace players. Better yet, start the game knowing that if all goes well (i.e. game is long and fun) you may have to replace every single PC from your starting party. Plan quests/plots accordingly. Have plot hooks that allow replacement players to join within a few days of someone disappearing. Keep the recruitment thread open, have one or two replacement players ready at all times (drop them a message to say hi each week - you'll make friends AND know if they're still interested). If need be, start recruiting again (better sooner than later).
Solution 2: don't be afraid to be a right bastard. Require good backstory, require complete character sheets, require imagination, require RP experience. You're an experienced GM, you have imagination, you've put a lot of thought and effort into this campaign (hopefully). It's really not worth going through the trouble with people who can't be bothered to read all the rules or write more than a paragraph's worth of backstory. English doesn't have to be a player's first language, but hell, most languages use proper capitalization and punctuation, so legibility is a must. It is harsh to people who don't have all that much time to spare and it is harsh to newbies - you just have to want to run the game more than you want to be nice to absolutely everybody.
Solution 3: combine 1 and 2
Problem 4) Issues arise, players quarrel.
Solution: having your players dislike each other OOC is one of the worst things that can happen to a GM. There's no easy solution - you can try combining two approaches - talk to each player OOC about if they want to overcome their issues and keep playing and lighten up the mood IC, giving a chance to the characters to bond (while railroading them away from chances to quarrel, if you have to).
NOTE: I assume somewhat quick-pased (for forums) games - most suggestions are geared towards a game that requires active/enthusiastic players and 1 post per day or so (as a general rule, at lest double that for GM, though when I had time to spare it was at least 4x).
That's about all my loose mental change at the moment. Hope it helps somebody (cuz I'd sure like to play again).