The shift cable can either be worn or you may have a tight bend or twist in it. To verify, you can rule out individual components at a time. First, disconnect the shift cable from the linkage at the out drive and verify the out drive itself shifts smoothly without the cable attached. If you have a SX out drive, the linkage connection will be underneath a plastic cover at the top rear of the out drive- it has three 10mm bolts holding the cover on and the linkage itself is connected with a cotter pin.
Next and with the shift cable disconnected at the out drive, try moving the throttle control arm forward and backward, checking for binding.
Depending on access, try to follow the path of the shift cable from the throttle control arm to the stern and through the transom, looking for tight turns or binding.
Next, remove the throttle control arm from the boat and disconnect the shift cable to see if the binding is limited to the throttle control arm or not. You'll need to do this step anyway if you have to replace the shift cable so its not wasted effort.
Most likely the shift cable is shot, but the hardest part about replacing it is pulling the throttle control arm.