При создании экземпляра класса передавайте прокси в конструктор.
public function __construct($proxy)
{
$this->ch = curl_init();
$this->proxy = $proxy;
}
и потом
$curl = new Curl('127.0.0.1');
$data = $curl->post('http://ya.ru');
Но у вас же есть метод setProxy, чем он вам не нравится? Здесь не надо каждый раз задавать прокси для этого экземпляра класса, один раз указали, и дальше будет работать с указанным, сколько бы раз вы не вызывали метод exec.
$curl = new Curl();
$curl->setProxy('127.0.0.1');
$data1 = $curl->post('http://ya.ru');
$data2 = $curl->post('http://vk.com');
$data3 = $curl->post('http://google.com');
по сути на одну строку кода больше. Ну либо я неправильно понял ваш вопрос.