Here is the test procedure you will need to do in order to isolate the problem. Most of the times there is a screen in the lower part of the neck that needs to be cleaned.
Disconnect evaporative canister located in rear of vehicle above spare tire. If you can now fill fuel tank, fault will be in canister vent valve or plugged canister. If fault is still present, disconnect all evaporative lines from fuel tank one at a time, if you can fill tank with any of them disconnected, fault will be in that line. If the tank still cannot be filled, fault will be in the tank or filler neck
Hope this is helpful..