As you mentioned, a big factor could potentially be in that a lot of fan games aren't in their final version. In that same line of thought, most fan games are quite small when compared to the official games (see: the games made during the Game Jams), and might not have a reason to include a Master Ball. They might not have a massive goal in which the player would be rewarded something like a Master Ball in favor of a "better" reward. (For example, in GSC / HGSS, the player only receives the Master Ball after collecting the first eight badges in Johto. That's a huge accomplishment! Almost half of the game has been played!) Most shorter games only have one "big" goal which is completed at the very end of the game, and to receive a Master Ball at that point could seem a bit useless to certain players, as the game is already finished!
There could also be the fact that some devs simply forget about it. I can't speak for everyone, but when I play the official games, my Master Ball goes completely unused. It doesn't feel good or rewarding to catch a Pokémon using it, and I don't find it very aesthetically pleasing personally, and I'm not entirely willing to "waste" it on a Pokémon that I don't deem worthy of requiring such a powerful Ball. Because of that, it's very easy to forget the Master Ball is even a thing, and therefore easy to forget to put it somewhere for players to find/receive.
From a world-building perspective, it could be explained by the fact that Master Balls are seen to be an invaluable item. It doesn't always make sense for there to be an NPC to hand it out to this helpful trainer, or for it to just be lying around for any person to find. In the RGY / FRLG, it's made very clear that the Master Ball isn't even completely developed: it's just a prototype! The whole reason Team Rocket attacked Silph Co. is to get the prototype of the Master Ball. Because of this, it might not always fit a fan game's story that a Master Ball is even possible to obtain by any NPCs in the game.
In my case, I don't personally find the Master Ball to be a very worthwhile reward when I receive it while playing. I do some big task, get all excited when an NPC starts going on a speech about how grateful they are for my help, begin brainstorming what cool and amazing thing they could possibly give me... only to get a Master Ball, which is great, but ultimately useless for me specifically. Most of the time, I would have preferred something else, like a rare Held Item or some kind of useful Key Item. (That's not to say I don't like getting the Master Ball, as it's a good emergency safety net, but it's always a little disappointing for me with my play style.)
When I play fan games, I appreciate when I can tell that a dev wanted to express their love for the official games. There's something so nice about playing a fan game, even a short one, and feeling like it has potential to be an official game. This can be easily accomplished by devs who made a point to use the official games' formula. The Master Ball is just one of those formulaic traits: every main series (and a few side-series) Pokémon games has a Master Ball for the player to receive/find. One of the traits that "make" a main series game is finding the Master Ball, which is why I suspect it can be a bit surprising when you play a fan game (that is very similar to the main series Pokémon games) and don't ever receive one. Even as a player who doesn't find the Master Ball very useful, I feel like something is just missing if I finish the game and haven't received one yet.
As for why devs might not include it, there's obviously lots of a reasons. Either it didn't fit in the game's world, the dev felt it might disrupt the flow, it wasn't seen as a useful reward, or maybe the dev just forgot about it! Unless there's a story-required Pokémon with a very low capture rate (which, IMO, is a crime on its own), I don't think the Master Ball is a crucial thing to remember. It's useful and fun, of course, but certainly not a sin to end up forgetting!