tableBASE attempts to use library space efficiently. If the BLKSIZE (RECLEN) is larger, it fits more directory entries into each block. But every table definition requires 1 full block for the definition.
The actual data for each table is stored in an integral number of full blocks, with the minimum being one. A very small table (e.g., 10 rows with a row length of 12 bytes) still requires a full block, which results in a very low utilization, even if a blocksize of 800 (the minimum allowed) is used. On the other hand, a very large table (e.g., 50000 rows with a row length of 200 bytes) will have over 99% utilization of its allocated space no matter what the blocksize.