Essa é uma pergunta difícil de ser respondida. Eu nunca parei pra pensar nessas diferenças, eu simplesmente sei quando devo usar um ou outro. Mas vou tentar te explicar.
does the form 'foram' always mean that the past situation has 'ended' and that the present situation is different from what was before?
Não. Isso vai depender do contexto. No caso do seu exemplo "Eles foram casados", significa que isso está no passado, ou seja, não são mais casados. Porém, se alguém te perguntar "Onde estão as suas irmãs?", você pode responder algo como "Elas foram comprar pão". Isso significa que elas saíram para comprar pão e podem ainda estar realizando essa atividade.
____________________
if they are divorced now, is 'foram' the only correct form?
No caso deles serem divorciados, você pode dizer:
Eles foram casados (durante) muitos anos. (Utilizar "durante" soa mais natural para mim)
Eles eram casados. (Colocar "muitos anos" nessa frase é estranho)
ou
Eles são divorciados.
______________________
...and if they are still married, the correct form would be 'eram'?
Se eles estão casados, pode ser falado da seguinte forma:
Eles são casados há muitos anos.
Eles se casaram há muitos anos.
___________________
Não tenho muita certeza com relação a gramática. Mas se você falar da forma que eu te mostrei, pode ter certeza que parecera natural.
Boa sorte nos estudos!!