on pp_confirm.php try adding the invoice id after the taxtotal al ine 138, so this:
$WA_PP_ECO_Do_optional[0][$nextIndex] = "TaxTotal";
$WA_PP_ECO_Do_optional[1][$nextIndex] = "".$eCartSMC->GetTax() ."";
$nextIndex = count($WA_PP_ECO_Do_optional[0]);
becomes:
$WA_PP_ECO_Do_optional[0][$nextIndex] = "TaxTotal";
$WA_PP_ECO_Do_optional[1][$nextIndex] = "".$eCartSMC->GetTax() ."";
$nextIndex = count($WA_PP_ECO_Do_optional[0]);
$WA_PP_ECO_Do_optional[0][$nextIndex] = "InvoiceID";
$WA_PP_ECO_Do_optional[1][$nextIndex] = "".session_id() ."";
$nextIndex = count($WA_PP_ECO_Do_optional[0]);
That should prevent duplicate transactions during the same session.