So have you bench tested the starter?
Connect to power and ground and jump the terminals together, the gear should spin and move outwards. If it spins but does not move outwards then you probably have a bad starter.
If nothing happens then you probably have a bad starter.
Have you checked the starter relay? Swap it with another relay of the same kind.
If you remove the relay and jump power across the pins does the vehicle crank?