У них разный корень.
Слово "раб" происходит от слова "орб" - которое означало "осиротевший, лишённый чего-то". Потом оно превратилось в "роб" (отсюда же родом слово "ребёнок", кстати), а уже потом - превратилось в "раб".
А у слова "араб" точное значение неизвестно (хотя, возможно, оно обозначает что-то вроде "жители пустыни" и родом из семитских языков), но появилось оно аж до нашей эры - когда в русском языке (а точнее, в языках, которые были предками русского) такой схожести и в помине не было.
Если бы слово "араб" было родом из древних славянских языков, то оно и изменилось бы, как все остальные слова этих языков, и в современном русском писалось бы через "о" - "ораб".