Life on attack and mana on attack will only give you back life/mana when you actually hit the target after you attacked them. That means that more attack rating will increase the chance that you get back the mana.
So what can you do? Get some jewels with up to +50% attack rating and/or get some more dex.
EDIT: your defense is very low. You should try to get some more.
Our attack rating isnt the problem, the actual problem is our melee spells(Blood Thorns, Lemure, etc). Its bugged, I've tested mutiple time with 95% chance to hit and theres cleary a bug that makes our melee spell not actually hitting.
The spell DOES come out 100% of the time, but the actual attack DOESNT hit 95% of the time.
For example, Rain of Bombs from Vizjun Commdish is a 100% proc rate from a melee attack
but when hitting Baal, this proc only comes out 4 out of 10 Blood Thorns casted.(not accurate, but it really doesnt proc 100% of the time, like supposed to)
its the same for Mana On Attack, Life on Attack, and other Melee attack procs.
For a comparison, Baal dies 3x faster using regular melee attack(litteraly the basic auto attack), which procs all the On Attack effects on my gear, like supposed to.