Yeah I'm not sure why thats happening to you. I mean I can say I usually attack first because a lot of the Pokemon I prefer are fast so it makes sense I would. A good example of why you are off on your theory though is when I played Black 2 recently. Going up against Skyla, I didn't move first a single time against her Swoobat and Swanna and my team included Leavanny, Lucario and Krookodile with a +speed nature. I was finally able to move first against here when I was 5 levels stronger than she was. Even with Pokemon known to be fast and one with a good nature, I was still second to move. Which was very deadly for me in that match.
So as you can see, we do not always move first as a player. Its just that we are typically higher in level and, most likely, gravitate towards faster Pokemon rather than slow, in general. Now I do not know about older games, if there were any glitches of some sort that made the player attack first sometimes even when our pokemon wasn't faster, but i suppose thats a possibility. As for the IV and EV stuff that's also a possibility and could account to a degree why it happens every once in a while but I strongly doubt that every single Pokemon has low IVS and EVS, especially in the newer games.
Is there any way you can give us a specific example of when this occurred, like for example a Torterra being faster than a Gengar? Not that that is even possible but it works as a hypothetical example.