\version "2.18.2"
ignoreManualBeams =
#(define-music-function (parser location music) (ly:music?)
(music-map
(lambda (m)
(if (not (null? (ly:music-property m 'articulations)))
(ly:music-set-property! m 'articulations
(filter
(lambda (a)
(not (or (eq? (ly:music-property a 'name) 'BeamEvent)
(eq? (ly:music-property a 'name) 'BeamForbidEvent))))
(ly:music-property m 'articulations))))
m)
music))
MUSIC = \relative c'' { c4 b8 g16[ a b c-.] d8 d4-> d8\noBeam c b a g2 }
\score { \displayMusic \MUSIC }
\score { \displayMusic \ignoreManualBeams \MUSIC }[ und ] sind nichts anderes als Artikulationen vom Typ BeamEvent. Außerdem gibts ja noch \noBeam, welches eine Artikulation namens BeamForbidEvent einfügt, darum hab ich mich gleich mit gekümmert.
Die Funktion \ignoreManualBeams macht nun nichts anderes, als Einträge BeamEvent und BeamForbidEvent aus Listen 'articulations aller Musik-Events rauszufiltern. Die Abfrage in Zeile 7 ist nur dafür da, dass keine neue, leere Liste 'articulations angelegt wird, wenn eine Note (oder auch irgendwas anderes) vorher keine Artikulationen hatte.
Falls dich irgendwelche Detail näher interessieren, frag gerne nach

\displayMusic ist nachher natürlich nicht mehr nötig, hier nur für die Veranschaulichung der internen Struktur.
Edit: Sorry, ich hab natürlich jetzt deine eigentliche Frage „Wie gehe ich das Problem am besten an?“ überhaupt nicht beantwortet, sondern dir stattdessen eine fertige Lösung serviert … Es hilft immer, erstmal \displayMusic auf alles draufzuschmeißen. Dann hab ich gesehen, gibts da diese Liste 'articulations, wo das drin ist, ich brauchte also eine Filterfunktion und wurde
hier fündig. Und die Funktionen music-map, ly:music-property und ly:music-set-property! muss man einfach kennen, die braucht man fast immer, wenns darum geht, irgendwelche Eigenschaften von Musik zu bearbeiten. Auf die Abfrage in Zeile 7 bin ich gekommen, weil ich in der Ausgabe von \displayMusic plötzlich lauter leere 'articulations-Listen gesehen habe (ergibt ja auch Sinn, nachdem ly:music-property '(), also ne leere Liste, zurückgibt, wenn nichts da ist).