(only using IPA for vowels in this post, not consonants)
Jabberwok wrote:1. Words with prefixes: beginnen (be·gin·nen), gebeuren (ge·beu·ren)
The schwa is an exception, yes. Syllables can in principle end in long vowels or a schwa.
Jabberwok wrote:2. More complex words (usually with ij): slagerij (sla·ge·rij), magazijn (ma·ga·zijn), natuurlijk (na·tuur·lijk)
These words have several pronunciations, but the one that is used for spelling purposes is: /sla:gərɛi/, /ma:ga:zɛin/, /na:ty:rlək/
However, the vowels are often shortened when they're not stressed, so you get: /slagərɛi/, /magazɛin/, /naty:rlək/ (with the same quality as a long a, but shorter)
Or even: /mɑgɑzɛin/, /nɑty:rlək/ (I don't think you can do it in slagerij, for whatever reason)
As you can notice not all short vowels from open syllable become long in those cases.
Please note that a vowel written with one letter (a single vowel) shouldn't be called a "short vowel". It isn't a matter of a short vowel becoming long, but a matter of a long vowel being written with a single vowel instead of a doubled vowel.
Sometimes it can be intuitively understood
like in slagerij e doesn't turn long because in original word slager, e is on closed syllable (ger).
The e in "slagerij" doesn't "become" long, because it has always been a schwa.
Slagen: /sla:gən/ (though nowadays "slaan" is the correct verb to use)a
Historically, this might indeed be a short vowel that has become lengthened - compare "slag" with "slager", but such etymologies play no role whatosever in the spelling.
With rest it is not so clear, for example with natuurlijk, I can't find any explanation why na- is not pronounced as naa-.
Vowels before a stressed syllable are often shortened, sometimes in quantity only (the vowel sounds the same but shorter), sometimes in quality (in Standard Dutch, this is especially the case with /a:/ - /e:/ almost never changes its quality to /ɛ/).
I have a theory that vowel becomes long only when it has emphasis or if it had emphasis in original word (slAger - slagerIJ).
So you are kind of right here, but it's a matter of a long vowel becoming short, not the other way around. The stress is what matters, though, like you say!
So my question: is it true that rule "If a syllable ends in a vowel, the vowel is always long" is not actually that universal? If not what is full set of rules?
I'd say the rule holds, but there are optional exceptions:
1. Open syllables end in long vowels or schwa
(1a historically, there were short vowels in open syllables, but those all became long in Middle Dutch: ik /gaf/, but wij /ga:vən/)
(2. Closed contain short vowels, long vowels or schwa)
3. Pretonal open syllables in principle contain long vowels, but they are generally pronounced with less quantity
(4. and sometimes they also get the quality of their short counterparts - this is especially common with the /a:/)
Rule 4. has no effect on the spelling
Rule 1 -> Vowels are written singly
Rule 2 -> Short vowels and schwa are written singly, long vowels are written doubly
Rule 3 -> The vowels are still written single (conservative spelling determining the fancies pronunciation - mostly based on how the words are written in Latin or French)
(You might notice that sometimes pretonal vowels in closed syllables, according to the spelling, is still pronounced as if they were in an open syllable: Dutch /a:frika:/ <> Flemish /ɑfrika:/ - there are probably better cases to be found, especially when it's a word with only one consonant: abandonn
eren - I imagine someone might pronounce /oo/ there rather than /o/ because the difference doesn't really matter for meaning in unstressed syllables and because they might not know the spelling in the first place - it only has one n in English afterall)