There is (or at least used to be) a variable in the .ini configuration file where you could set this. The variable was 'default_max_read_request_size'. I'll have to check to see if this is still active. Thanks.
Currently the correct way is as you say, change it with setpci. the recommended values for ConnectX-3 are :
Max Payload size - 256
Max Read Request - 4096