It is probably just a matter of getting your table order and join types set up correctly. For instance I think this one might be:
$rsLots->setQuery(" SELECT * FROM users LEFT OUTER JOIN lotOwners ON lotOwners.ownerID = users.UserID LEFT OUTER JOIN lots ON lots.lotNumber = lotOwners.lotNumber WHERE userID = ?");
The left outer join will return all of the rows from the table on the left even if there are no matching rows in the table to the right. I think that is the key to your problem if I'm understanding it right.