Generally, the OPTIMIZE FOR clause is used to shut off sequential prefetch. Sequential prefetch is when DB2 starts reading data or index pages from disk into the bufferpool, even before the DB2 Datamanager has asked for them (in anticipation that they will be requested shortly).
If you want to shut off sequential prefetch, then using OPTIMIZE FOR 1 ROWS is recommended (even when you have FETCH FIRST 19 ROWS ONLY).
However, if the query must materialize the entire answer set before it figures out which of the 19 rows to retrieve, then you might get better performance by using sequential prefetch. If you have an ORDER BY or the query requires a tablespace scan or a merge-scan join (see the Explain for that query) then I would not use the OPTIMIZE FOR clause because sequential prefetch may help you.
I know that this may be counter-intuitive to many people (not using OPTIMIZE FOR 19 ROWS when you have FETCH FIRST 19 ROWS ONLY), but DB2 optimization and performance is not always straight forward.