Hi @EvilJordan,
I am not sure if there is a way around having to use a different function name.
As for verification: The proxy contract should already be verified. You will need to verify your implementation contract using the same process as any other contract: Verify smart contract inheriting from OpenZeppelin Contracts