Can't change keyboard layout

You could script something like this:

First get the list of sources:

gsettings get org.gnome.desktop.input-sources sources

e.g.

gsettings get org.gnome.desktop.input-sources sources
[('xkb', 'gb'), ('xkb', 'us'), ('xkb', 'th')]

Then in your script change around the order - sleep and then reset back again. That seems to work for me e.g.

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'th'), ('xkb', 'us'), ('xkb', 'gb')]
sleep 3
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'gb'), ('xkb', 'us'), ('xkb', 'th')]

This as an autostart script should work

SOURCES=`gsettings get org.gnome.desktop.input-sources sources`
gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'de')]"
gsettings set org.gnome.desktop.input-sources sources "$SOURCES"

The second line doesn’ matter since it is reset by the third line.