First of all
Welcome!
Second of all, choppers are a complete fucking nightmare. You haven't done anything wrong, this is just one of the "features" of choppers. If it doesn't matter a lot, then don't worry about it - its just what they do. If it really does matter, then there is a standard fix. A little bit of scripting is required but its easy.
Here's how you do it. Don't use waypoints. Instead, place markers (make them invisible) or gamelogics at the places where you would put move waypoints. Name each one. Now place a trigger over each one, with a fairly large area - say 300m, but experiment. Group each trigger to the chopper: you will now get new options in the On activation box. Select one of the "present" ones, whichever is most appropriate.
Lets say you have two gamelogics, named GL1 and GL2. Somewhere, you need to write
chopper1 doMove getPos GL1
In the trigger over GL1 write this
On Activation: chopper1 doMove getPos GL2
Thus the chopper can be slung from one location to another: when it gets close to a GL and fires the trigger covering it, it gets sent to the next location. And so on.
I hope that makes some sense. Ask if it does not. (Try and be specific about the bits that don't make sense.) I hope you have found lots of useful tutes, make sure you read everything by snYpir and Johan Gustafsson.
One of the secrets to OFP mission editing is to bend: if something doesn't quite work the way you want, don't try to force it - give up on that exact idea and try and find a way round it, something else that's just as good. There is rarely a way straight through, but there is almost always a way round.
Happy editing!
PS - always use as few waypoints as possible to get from A to B.