No suelo utilizar mucho el PDO para generar código de cero, ya me vienen generados, o bien me valgo de algunos Frameworks que lo generan, pero alguna vez leí algo acerca de PREPARED STATMENTS de PDO... fijate en el manual a ver que encuentras según tu necesidad y vemos si se puede solucionar..
http://php.net/manual/en/pdo.prepared-statements.php
Si te fijas en la introducción hay algo que dice:
"The parameters to prepared statements don't need to be quoted; the driver automatically handles this. If an application exclusively uses prepared statements, the developer can be sure that no SQL injection will occur (however, if other portions of the query are being built up with unescaped input, SQL injection is still possible)."
Por ende creo que mirando un poco la función PREPARE puedes lograr tu objetivo.