You should definitely take a rest day BEFORE and AFTER your Race day. The reason is simple, people doing a little run the day before the race day are often doing so the chase the anxiety. If you are not too nervous before the race, just take the day off. The day after should be OFF since the pace you run during a race is harder than during trainings for various reasons such as people around, other competitors, the fact it is a race.. etc. Your body will be much more tired after a Half marathon Race than (for example) after a Half marathon training.
This is an extremely loaded question. It depends on how many days you're running and what exactly "20+" means.
Are you racing two 5k's every week? If so, I'd say stop! You shouldn't race more than every 2-3 weeks, or longer if you're a beginner. You can race often and bounce back the more experienced you are. When I ran in college we'd race every weekend and run 7 days a week, often over 80 miles/week. Your training is very different, but two races a week is far too many.
If you're just doing them as fun runs or at your typical running pace, then you don't need to rest before and after. If it's a standard pace for you, then no rest is necessary aside from your normal weekly recovery days.
Active recovery is always best, like pool running or cycling, if you're really sore. You also mentioned that you're very injury-prone - do you do any strength/flexibility work?