Resuelto, el valor $campo5 no era numérico, era tipo char.
Solución:
Código:
$campo1 = 'valor1';
$campo2 = 'valor2';
$campo5 = '150.75';
$query = "SELECT * FROM Facturas WHERE campo1 = '$campo1' AND campo2 = '$campo2' AND CAST(ROUND(campo3,2) + ROUND(campo4, 2) AS CHAR) = '$campo5'";