There is a few things that could be going on, most likely related to drive fragmentation and physical location of hiberfil.sys and pagefile.sys or other files loaded in memory that cannot be moved. The first thing I would be trying is a reboot in safe-mode to disable as many processes/services as possible and then disabling the system page file and hibernation support (temporary) and running a defrag followed by resizing the volume. That should move a majority of your data to the front of the drive and free up more space for repartitioning. If doing that in safe-mode isn't supported, and I'm not sure on that since I haven't tried it myself, then doing a selective startup with msconfig that disables startup items and do the same process. Then re-enable your page file and startup entries once you are done.