Please, don't take this as a "professional Avast opinion" but I've known for a while that system restore files are a little different from "regular" files.
Usually, if I see that a system restore file is infected, or otherwise corrupt, I usually just disable system restore on the PC in order to delete any and all system restore files that remain.
The reason being, is that if avast (or any other anti-virus) can't clean those files, and an attempt is made to restore the system to an earlier date by using system restore, you'll probably just end up re-initiializing the virus, and or causing more harm to your system.
If you think your system is clean, and working properly, it would probably be a good idea to disable system restore, then once everything is deleted, re-enable system restore, and create a restore point. That way, you know that any restore files that may have had a virus in them have been removed, and a new "clean" restore file has been created (by you).
The system itself keeps system restore files pretty well guarded, and that may be why you can't repair the virus while doing a boot-time scan. The only way to remedy that, would be to scrap the system restore files completely.
Again, don't take this advice as an Alwil Software developer, just take it as a PC Tech that's been around the block a few times.
You could trust me, or call the next PC tech in the phone book... The choice is up to you.