Problema de Acentuação ao consumir WebService no Windows Server

Correção

Estou com um problema de acentuação ao consumir WebService no Windows
Server.
Tenho apache-tomcat-7.0.63 instalado no windows server 2008, e como SGB,
o PostGres 9.4 e com o Java 8.
O erro acontece quando executo fora do NetBeans. Ou seja, se executo
fora em qualquer ambiente ele grava os caracteres errados, mas se
executo dentro do NetBeans(Depurando ou apenas Executando) ele grava os
caracteres normais.

código do web service

    @POST
    @Path("cliente/sincronizar")
    @Consumes("application/json;charset=utf-8")
    public Response createClienteInJSON(String param) {
        Gson gson = new Gson();
        ContaCTR contaCTR = new ContaCTR();

        ParamCliente paramCliente = gson.fromJson(param, ParamCliente.class);

        Conta conta = contaCTR.carregar(paramCliente.getToken());

        if (!paramCliente.getClientes().isEmpty() && conta != null) {
            try {
                WsAuxiliar.sincronizarCliente(paramCliente.getClientes(), conta);

                ClienteCTR clienteCTR = new ClienteCTR();
                List<Cliente> clientes = clienteCTR.listar(conta.getContaid(), "codigointerno");
                WsAuxiliar.sincronizarEmail(paramCliente.getEmails(), conta, clientes);
                WsAuxiliar.sincronizarEndereco(paramCliente.getEnderecos(), conta, clientes);
                WsAuxiliar.sincronizarTelefone(paramCliente.getTelefones(), conta, clientes);
            } catch (Exception e) {
                throw new RuntimeException("Falha ao sincronizar Cliente. Erro: " + e.getMessage());
            }
        }
        return Response.status(201).build();
    }

código cliente consumindo web service

    public Retorno sendPostClientes(String token) throws Exception {
    try {
        ParamCliente paramCliente = new ParamCliente();
        paramCliente.carregar();
        paramCliente.setToken(token );

        Gson gson = new Gson();

        String input = gson.toJson(paramCliente);

        URL url = new URL(Configuracao.carregar().getWebserv() + "cliente/sincronizar");
        HttpURLConnection conn = (HttpURLConnection) url.openConnection();
        conn.setDoOutput(true);
        conn.setRequestMethod("POST");
        conn.setRequestProperty("Content-Type", "application/json;charset=utf-8");            

        OutputStream os = conn.getOutputStream();
        os.write(input.getBytes());
        os.flush();

        if (conn.getResponseCode() != HttpURLConnection.HTTP_CREATED) {
            throw new RuntimeException("Failed : HTTP error code : "
                    + conn.getResponseCode());
        }

        BufferedReader br = new BufferedReader(new InputStreamReader(
                (conn.getInputStream())));

        String output;
        System.out.println("Output from Server .... \n");
        while ((output = br.readLine()) != null) {
            System.out.println(output);
        }

        conn.disconnect();
    } catch (Exception e) {
        return Retorno.criarRetorno(Boolean.TRUE, "Erro ao sincronizar clientes!\n" + e.getMessage());
    }
    return Retorno.criarRetorno(Boolean.FALSE, "Clientes Sincronizado com sucesso!");
}

Desde já um muito obrigado pela ajuda.

Tenta isso:

BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream(), "UTF-8"));

Infelizmente deu o mesmo erro. Mas muito obrigado pela resposta. Resolvi parcialmente substituindo o charset de UTF-8 para ISO-8859-1.
Mudando o charset inverti o local do erro rsrs… antes funcionava dentro do netbeans e externo não funcionava, agora
funciona externo mas dentro do NB parou de funcionar… Mas como o executável externo é mais importante, afirmo que consegui contornar o erro.

Agora no seu Netbeans não funciona porque seu Netbeans está configurado para ler em UTF-8. O charset é uma codificação “individual”. Se eu mando uma mando uma mensagem pra você codificada em UTF-8 você tem que ler em UTF-8, se você tentar ler em ISO vai dar errado. Você tem que ler a mensagem na mesma “língua” que a mensagem foi escrita.