The over allocation shouldn't be the issue, the used capacity on the volume never gets that close.
I tried the solution mentioned in the link provided by @jonathanm
<disk type='file' device='disk'>
<driver name='qemu' type='raw' cache='writeback' discard='unmap'/>
<source file='/mnt/user/domains/Ubuntu/vdisk2.img' index='1'/>
<backingStore/>
<target dev='hdd' bus='scsi'/>
<alias name='scsi0-0-3'/>
<address type='drive' controller='0' bus='0' target='0' unit='3'/>
This didnt seem to make a difference.
I know this is probably not the best solution, but currently i am trying a cronjob that runs fstrim periodically. this appears to be working