Weiss helped himself to a double and also won a penalty that was converted by Steven Whittaker, before Maurice Edu sealed the victory late on.
Rangers now sit five points adrift of SPL leaders Celtic, but have three games in hand over their Old Firm rivals.
Kenny Miller, who has been holding talks with Birmingham and Fiorentina, was back in the starting line-up after being left out of the squad for Monday's Scottish Cup win over Kilmarnock.
Nikica Jelavic was named on the bench for the first time since sustaining a serious injury in October, while Steven Naismith failed to make the squad after struggling with a hamstring strain.
Hamilton were without suspended duo Simon Mensing and Jim McAlister following their red cards in the defeat to Celtic in midweek.
With their squad stretched through injury and suspension, Accies handed debuts to youngsters Michael Devlin and Lee Kilday, while Mickael Antoine-Curier made his first appearance since his return to the club.
Rangers looked the more dangerous team in the opening stages, with Miller and Lee McCulloch both carving out opportunities early on.
Steven Davis then had a decent chance with a free-kick from 30 yards out that whistled just over the crossbar, before seeing another opportunity flash across the face of goal and past the upright.
Hamilton were forced to soak up more pressure when Whittaker released Madjid Bougherra down the right flank and he cut back for McCulloch, whose point-blank shot was blocked well by Tomas Cerny.
But the Accies goalkeeper was helpless when Rangers surged into the lead with 25 minutes gone when Weiss lashed a firm, low shot into the bottom corner from 35 yards.
The winger then won a penalty just two minutes later when he was tripped in the box by Devlin, and Whittaker stepped up to fire confidently into the back of the net from the spot and add to the penalty he netted in the Scottish Cup earlier in the week.
Kyle Lafferty could have added his name to the scoresheet when he met a Miller flick only to see his looping header swiped one-handed over the crossbar by Cerny.
Weiss found the back of the net again on the half-time whistle when he curled a free-kick past Cerny after being fouled by Grant Gillespie, with Miller stepping over the ball in front of goal to allow the effort to hit the back of the net unchallenged.
The tempo of the game had dipped slightly in the second half but Rangers still posed a threat in front of goal, with Cerny called into action to gather an ambitious long-range shot from youngster Jamie Ness.
Bougherra then squared into the path of Miller but he failed to claim his 23rd goal of the season with a poor header that went well over the crossbar from 10 yards, before Sasa Papac rifled across the face of goal and past the post.
Weiss was denied the chance to claim a hat-trick when he was replaced by Gregg Wylde with just over an hour on the clock, while Davis made way for Edu.
Richard Foster was thrown into the action when Papac hobbled off with 20 minutes to go, meaning Jelavic would have to wait a while longer before making his long-awaited comeback after almost four months on the sidelines.
There had been few incidents of note in the second half, following an entertaining opening 45 minutes, until Rangers grabbed their fourth goal eight minutes from time.
Edu collected a throw-in from Whittaker before cutting into the middle and bulleting a left-footed shot home from 18 yards to put the gloss on the victory.