Mi consejo es que dejes de usar fuentes de comportamiento y, en su lugar, usa esto:

Lasfuentesdecomportamientodependendeltiempoytienenunaresoluciónlimitadacuandosenecesitanprocesargrandesrangosdinámicos,yaseadefrecuenciaoamplitud.Sustripdv/tripdtpaarmeterssolopuedencorregirtanto.OTOH,losdispositivosAtienenpropiedadesintegradasqueloshacenprecisos.
Lomismoocurreconlageneracióndetriángulos(orampa,etc.).Useunafuentefija,queseexpande,internamente,enpuntosconocidoseneltiempodesimulación,quesedibujarácorrectamenteconLTspice,mientrasqueunafuentedecomportamientodeberácalcular,enelmomento,todoslospuntos,loquelaharápropensaaerrores.
TLDR:useloselementosdeLTspicesobrelasfuentesdecomportamientosiemprequeseaposible.
AquíhayunejemplofalsodeunconversorBuck:

A1yV2hacenqueelcomparadorylarampa,G1yC2seanelamplificadordeerror.Todoslosvaloresestánhechoscompletamente,soloparaejemplificación,solo.Sinecesitauncontroladordehistéresis,solouseA1comocomparadordeSchmittyconfigurelosparámetrosapropiadosvtyvh.Puedenecesitarmáselementosqueunaúnicafuentedecomportamiento,peroavecesnopodráhacerfrentealrangodinámico.Valelapenaelcambio.Avecesmássimplenoesmejor.
DesglosandolaseccióndePWMyusandotuentrada(500Hz,5V,2s),asíescomoseve:
Lo que hay entre los nodos o y f es un Butterworth de segundo orden con fc=50Hz@-3dB (el parámetro fc ). Observe que no hay un paso de tiempo impuesto en .tran , pero también que hay una rampa 95% . Podría usar un 100% ( 1/f para Trise y Tperiod , cero para Ton y Tfall ), pero LTspice se ve forzado a hacer dos puntos de cero coincidentes, lo que se traduce en una resolución deficiente : asume que sabes lo que estás haciendo y omite los pasos de tiempo, lo que da como resultado, más o menos, lo que tienes en tu OP. Solo uno de los parámetros de la fuente se puede establecer en cero para una buena resolución.