The problem is that even though you know he's going to roll, you still attack at the position he is at before the roll. You know he's going to roll and you know where he will end up after the roll. So attack directly there. It might be disturbing at first because you'll have the impression you will get punished for not attacking as you reach his initial position, but in fact you won't, because he's going to roll. Any attack would do, it can be a grab (and it's not about range, because if you grab him at the end of his roll, the time he's vulnerable is long enough for you to grab), it can be a short hop aerial (again, short hop later than what you might think), it can be a full hop aerial, it can even be a dash attack at higher percent (enough to get him offstage and then edgeguarding is easy).
The trick in punishing habits is really to hit where you know they will be even though they're not there yet.