Photos may be stuck on an image file or a video that cannot be scanned because of a format problem.
Are there any items in your Photos Library in an unusual format? Audio files, older videos inane incompatible format?
You can check for such items with a smart album with the rule "image is not able to upon to iCloud Photos". If this smart album id not empty, export the items in this album from your Photos Library and then delete them from the Photos Library. Then try to reimport them. You will see an error message, if the item are incompatible or Phots will try to convert the format.
have you kept your Mac powered and running at all times, so it can complete the scan over night? You Amy not see any progress for a long time.