I greatly suggest keeping variable replication out of Player Controller (which >>is not<< replicated by default) and keep all your replicated variables inside of Player State (which >>is<< replicated by default).
You can leave your RPC calls inside of player controller, those will still work just fine, just keep replicated data out of it and into something like PlayerState which was made specifically to hold those variables for replication.