This causes money to flow from subscribers listening to this niche artist to the more popular artist. That's a problem to which I see various solutions, like only including active clicks on songs or artists in the revenue distribution model, or indeed changing the model to be per user instead of by aggregate number of plays. So it's not really that it's unfair to pay artists more that are played more, it's that because of the way some people use Spotify, plays are racked up for reasons other than because their music is so great.
</edit>
It effectively works in the way you describe, but aggregated instead of per user. So instead of splitting your £15 into 4, it splits Spotify's total revenue (minus service fee) among the artists listened to. If 100 million users listened to artist A and 50 million to artist B, and those are the only two artists listened to, then they get 100/(100+50)=67% and 50/(100+50)=33% of the revenue, respectively. Listening to certain artists still gets them more money.
So I'm not sure why you say that most of your money goes to a popular artist instead. Other people's money goes there because they listened to it, yours doesn't really if you look at an individual subscriber's level. It's a bit like electricity: you can purchase green power but of course they don't dig new cables to get you exclusively green power, they just pay the wind/solar/hydro farms instead of the coal farms for the part of the power that you used.
(Some notes I made for myself to make sure I got this straight, figured I could share them: If you listen only to artist A and 999 other people listen to artist B (everyone plays an equal number of tracks), then £15×1000=£15000 goes into the pot, and your artist will get 1/1000×15000=£15 and the other one will get 999/1000×£15000=£14985. Even in aggregate, it should work out, but please correct me if I went wrong somewhere!)