Booking now for the end of May, $300 is about as good as you'll get. Searching dates around 21-26 May, the cheapest I could find was only $15-20 less without shortening his trip significantly.
As Prague is now a year round destination, especially for short breaks like your son wants to do, it means all the cheap seats are booked months in advance direct or via.
He could get to FRA for on EI for $165, but even a cheap rail ticket from there will bring your total back up toward the $270-300 mark.
I can't find flights to any nearer cities with onward travel by rail that would bring the total down any further.
Ryanair do fly to Czech Republic, only to Brno 100 miles from Prague, and only from Stansted. From DUB via STN all in prices way more than $300 for those dates.