External display attached to MacBook Pro has washed out colours
I finally fixed this by following the instructions at this blog post:
Fixing the External Monitor Color Problem with My 2018 MacBook Pro
Read the blog post, it's good!  But just in case it becomes unavailable, here's
a short summary:
The external monitor is using the YPbPr colour format over HDMI.  Something about the MacBook Pro YPbPr output is not compatible with the monitor.  It's possible to create override settings to force the HDMI connection to use RGB instead, using a script at https://gist.github.com/adaugherity/7435890.
Here are the instructions from the above post:

Connect the problematic display.
Download and run this script
(./patch-edid.rb). Take a look at the generated file and remember
its path.
Reboot into recovery mode (⌘-R at boot).
Mount your main disk (enter Disk Utility, select the gray Macintosh HD, click
Mount, provide your password, close Disk Utility).
Open up a terminal (Utilities -&gt;Terminal), backup the overrides directory,
copy in your new override file, and reboot:

cd /Volumes/Macintosh\ HD/System/Library/Displays/Contents/Resources 
cp -R Overrides Overrides.bak 
cp -R &lt;path to directory generated in step 1&gt; Overrides/ 
reboot