Zuerst müsste man wissen, was dein Datapack genau macht und wie es strukturiert ist. Aber hier ein paar Ansatzpunkte, die Performanceprobleme verursachen können:
- Das Datapack spawnt zu viele Entities
- Entity-Selektoren, wie @e, die in hoher Anzahl verwendet werden
- Häufige NBT-Aufrufe (Schreiben, Auslesen): Z.B. /execute as @e[nbt=xy]
- Allgemein viele Befehle, die pro Tick ausgeführt werden
Zudem würde es mich interessieren, ob die Probleme in einer Vanilla-Welt ähnlich sind oder sich verändern. Ansonsten kann ich dir empfehlen, wenn du eh Paper verwendest, direkt ein Plugin zu programmieren, da in den meisten Fällen Plugins besser und zuverlässiger auf Servern funktionieren und es allgemein mehr User gibt, die dir in der Programmierung kurz aushelfen können. Zudem lernt man nebenbei auch noch eine Programmiersprache.
Mein Tipp: Versuche unnötige Berechnungen oder Loops zu vermeiden. Oder eher die Befehle, die in Loops ausgeführt werden, mit bestimmten Abfragen zu minimieren.