Creating a priority search tree to find number of points in the range [-inf, qx] X [qy, qy'] from a set of points sorted on y-coordinates in O(n) time
Is there a way to make PST in O(N)


The simple is answer is No. It will take a minimum $O(NlogN)$ time to construct the tree.


  Is this a valid approach to construct a Priority Search Tree in O(n) time, from a set of points sorted on the y-coordinates.


No, the algorithm you mentioned will fail when you try to maintain the min-heap property based on $x-coordinates$.When you perform the min-heapify operation, the $y-coordinates$ will move from original position and the property of BST (based on $y-coordinates$) will fail. You can't maintain BST property for $y-coordinates$ anymore. So the tree will just reduce to min-heap  based on $x-coordinates$. 

Here's a thought to construct priority search tree sorted on $Y$-coordinates:

For a given set of points $S$(sorted on $X$-coordinates), create a priority search tree as follows:


If $S$ is empty, return a NULL pointer and stop. 
The point $P$ in $S$ with the greatest $Y$-coordinate becomes the root $R$.
If  $S-P$ is an empty set , then $R$ is a leaf so we return it and stop.
Let $X(P)$ be a value such that half of points in $S-P$ have
$X$-coordinate lower than $X(P)$, and half having higher value. Basically $X(P)$ is median(based on $X$) of your $S-P$
Recursively create a priority search tree on the lower half of $S-P$,
let its root be the left child of $R$.
Recursively create a priority search tree on the upper half of $S-P$,
let its root be the right child of $R$.


Total time complexity will be $O(nlogn)$ as the tree will be height balanced.

Notes:


Since you have sorted points based on $X$coordinates finding median will take $O(1)$.
To find the maximum $Y$, for simplification you could also maintain a max-heap based on $Y$. Finding maximum $Y$ from it and subsequently removing from it during creation of priority search tree will take $O(logn)$.