get_option() will not work without access to wp-config.php

You don’t.

The get_option() function is a WordPress function. You cannot use it without loading WordPress.

More to the point, you should not be calling a file in your plugin directly. You should make your form or whatever is directly linking to that file link to a normal WordPress endpoint instead, and have additional parameters in your plugin to load that file from WordPress.

Essentially, you’re doing it backwards. You’re somehow running a file in your plugin and then having it load WordPress. But WordPress should be loading the plugin, not the other way around.

If you can explain what you’re doing in more detail, perhaps somebody can tell you the correct approach to do that instead.

Edit: Given your additional information, I would invite you to consider this:

It POSTs the email address data to another script called
dotmailer-add.php, also in my plugin folder.

That’s your real problem here. You’re sending information directly to a file in your plugin folder. This means that WordPress is not loaded because you bypassed it. So you have no access to the WordPress functions.

Take a look at this file in WordPress: /wp-admin/admin-post.php

You’ll find this right at the top:

* WordPress Generic Request (POST/GET) Handler
*
* Intended for form submission handling in themes and plugins.

Sounds promising right? Using this is actually very easy.

Make a form that contains whatever form inputs you want, and a hidden “action”. Something like this:

<form method="POST" action="<?php echo admin_url('admin-post.php'); ?>">
<input type="hidden" name="action" value="my_custom_action">
<input blah blah blah>
</form>

Now, make some code in your plugin that looks like this:

add_action('admin_post_nopriv_my_custom_action', 'my_custom_form_handler');
add_action('admin_post_my_custom_action', 'my_custom_form_handler');
function my_custom_form_handler() {
  ... stuff to handle the $_POSTed data goes here ...
}

And there you go. You can now handle your form within the WordPress context and have access to all it’s functions. WordPress loads the plugin, the plugin does the processing if it has to do so.

If you need to access WordPress functionality, then your code needs to go through WordPress, not try to include it as a library. WordPress has endpoints like this for generic form handling, for javascript requests, for all sorts of things.