Когда вы делаете:
this.props.navigation.navigate('Home')
Вы вызываете функцию навигации и передаете ее вывод в onPress.
Когда вы делаете:
() => {
this.props.navigation.navigate('Home')
}
вы передаете функцию стрелки (не вызов), и эта функция содержит вызов вашей навигации, но функция стрелки не вызывается, пока кнопка не нажата.
Ваше решение с использованием функции со стрелкой является правильным, потому что вам нужно передать параметр, если вам не нужно было передавать его, вы можете сделать:
<Button onPress={this.someOfMyFunctions.bind(this)}
title = "Go Home" />
Это приведет к вызову someOfMyFunction при нажатии кнопки.