1) Обратимся к
документации:
Метод Window.getComputedStyle()
возвращает объект, содержащий значения всех CSS-свойств элемента, полученных после применения всех активных таблиц стилей, и завершения базовых вычислений значений, которые они могут содержать.
То есть
getComputedStyle().style
возвращает те стили, которые были установлены непосредственно в CSS, поэтому строка "50%" после обращения к значению бордер-радиуса - нормальное явление.
2) Скорее всего, здесь без дополнительных вычислений не обойдётся, из коробки нельзя получить значение border-radius в пикселях, если оно было задано в процентах.