The record expansion factor is basically how much space on each block of the data file is reserved for record expansion.
Generally PxPlus use Variable length record files (VLR format). These are stored in logical blocks within the data file where each block can contain multiple records and the records 'physical ' address consists of the block address and record number within the block.
Because of this as the contents change so too does the space required to store the record change. When a record is updated and its size shrinks, that space is returned to the block. When a record grows if the block has enough free space the record remains in the same spot meaning the key tables (which contain the key values and associated record address) does not change. However if the record grows to the point that there is not enough space in the block to contain the record, the record is physically move to a new block and the key tables updated with the new record address.
The expansion factor controls how much free space to leave in each block to allow for record expansion. When a block has less that the factor percentage of free space available new records will not be added to it and the block will be considered full.
Now in real life most blocks will always have some free space as it is unlikely that the records will fit exactly, however if your system is tight on disc space you can reduce this factor.
As for the record size, when using VLR files the maximum record your application can write is governed by the record size specified on the file; however you can increase this up to the block size without having to reload/rebuild the file. When you increase the record size all the system does is change the file header and on subsequent file opens a larger buffer for holding the record is allocated.
You mentioned that the system advised you the record size could be changed to anything in the range of 400 to 2024 bytes. Changing this will increase the buffer size allocated to the records, so if you increase this from 400 to say 500, the only impact on you system will be whenever the file is opened a 500 byte buffer will be allocated and not a 400 byte buffer. Just be sure to have everyone exit the system when you make the change as anyone with the file currently open will only have a 400 byte buffer which would cause a problem it they encounter a record you have just added with the larger size.
It should also be noted that older BB applications often used Fixed length records (FLR format). That meant that each record was a fixed size padded with nulls. You may want to check to see if some of your larger files are using fixed length records as these are quite wasteful of disk space. Generally you can convert these to variable length record files without impacting any of your programs other than those that might attempt to create the file as it would need to create a VLR file instead.