While I was debugging that I also deleted my chainstate index so now it's redoing the entire blockchain, yay waiting.
I believe im running into a similar issue trying to port over a block explorer. Some Peers appear to be issuing txes with invalid inputs (invalid txids). If you have any thoughts please send me a PM. T
As a dirty hack I set all transactions to pass verification which then allowed it to fully sync. I then deleted the blockchain and am now syncing again with validation checks back in but also some debug log statements.