There is no best martial arts. Any martial arts will suit you as long as you know how to use it effectively. I would recommend that you learn various arts and find the one you are most comfortable with. Once you focus all your strength in excelling in that art, you will have the ultimate answer to your question.
Don't be fooled by people who claim that this certain art is the best. That is just pure nonsense. People are as different as they are many. We have different physiological makeup, body builds, strengths, and weaknesses. What may work for one person will not necessarily work for everyone. However, if you manage to find a good martial arts club/teacher to learn under, there are untold benefits in all martial arts styles.
There are many arts to chose from, of course.
You could try Bujinkan Taijitsu (Ninjutsu). This is one of the most complete martial arts systems you will find around. You will learn so much more than you already know.
You could go back and continue Karate. It is a very good system of self defense that has been around for many years, being constantly developed and perfected.
You could also learn Wushu, Taekwondo, Aikido, Krav Maga, and Kempo for example. They all focus on striking, blocking, and evading as their core training.
But be careful because there are so many martial arts out there today. Be careful not to be ripped off. Find mainline clubs that have clubs in various countries or internationally, not the corner Mc-Dojos that are sprouting every day all around us.